I'm in the early stages of trying to write a MAL program to access a remote database using mapi.* modules, mainly to test out the function, but also for future work on distributed query processing.

I find that if I issue the mapi,connect() call as follows:

        mal> ...
        mal> mid=mapi.connect("localhost",50000,"monetdb","monetdb","mal");

I get the following response:

        MAPI  = (monetdb) /tmp/.s.monetdb.50000
        QUERY = mid:=mapi.connect("localhost",50000,"monetdb","monetdb","mal");
        ERROR = !IOException:mapi.connect:Could not connect: monetdbd: please specify a database

The "please specify a database" part seems to be coming from tools/merovingian/daemon/client.c, i.e., the connection was attempted but was rejected by monetdbd because a database parameter was not specified.  I( noticed that mapi.connect() calls SERVERconnet() which calls SERVERconnectAll() which calls mapi_connect() with NULL as the database parameter.  Should SERVERconnect() (i.e., mapi.connect()) be altered to accept another parameter, database, which would be passed through SERVERconnectAll() and mapi_connect()?  Or am I missing something altogether about mapi.connect()?

P.S. Please excuse me if this is a foolish question.  I am new to MonetDB.

Thank you,

Steve Morgan