We would like to upgrade to 5.5.0 from 5.4 to take advantage of the fix for creating a dump when schemas are used. We are having a lot of difficulty getting a connection (or reliable connection) via the jdbc driver to the merovingian daemon over a network connection.
The behaviour is a bit erratic and it is difficult to find a sequence of events to consistently prove the issue.
We have two issues, a frequent invalid credentials exceotion. We are running multiple databases from the same merovingian daemon, two out of three will work fine but the third, created and started identically to the others will give us the following (this could be any of the three);
java.sql.SQLException: InvalidCredentialsException:checkCredentials:Invalid credentials for user 'monetdb'
at nl.cwi.monetdb.jdbc.MonetConnection.<init>(MonetConnection.java:219)
at nl.cwi.monetdb.jdbc.MonetDriver.connect(MonetDriver.java:158)
Another issue we are having, specific to 5.5.0, is a “no such database” message.
Is there a recommended way to create databases? Perhaps we have this wrong (although this is the first time we have seen this error)
We can connect across the network to any database directly, including when they are started by merovingian, but cannot connect when trying to go via merovingian; we get either the database does not exist, or invalid credentials
This is the sequence
# /etc/monetdb5.conf settings
monet_daemon=yes
mero_port=50050
mapi_port=0
mapi_open=true
# start merovingian as user monetdb
monetdb@web:/local/monetdb/bin> ./merovingian
# check daemon is running
monetdb@web:/local/monetdb/bin> netstat -tlnp | grep mero
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:50050 0.0.0.0:* LISTEN 24077/merovingian
# create and start DB1 DB2 DB3 DB4
monetdb@web:/local/monetdb/bin> ./monetdb create DB1
successfully created database 'DB1'
monetdb@web:/local/monetdb/bin> ./monetdb create DB2
successfully created database 'DB2'
monetdb@web:/local/monetdb/bin> ./monetdb create DB3
successfully created database 'DB3'
monetdb@web:/local/monetdb/bin> ./monetdb create DB4
successfully created database 'DB4'
monetdb@web:/local/monetdb/bin> ./monetdb start DB1
monetdb@web:/local/monetdb/bin> ./monetdb start DB2
monetdb@web:/local/monetdb/bin> ./monetdb start DB3
monetdb@web:/local/monetdb/bin> ./monetdb start DB4
# check deamon and databases listening
monetdb@web:/local/monetdb/bin> netstat -tlnp |grep m
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:50050 0.0.0.0:* LISTEN 24077/merovingian
tcp 0 0 0.0.0.0:50000 0.0.0.0:* LISTEN 24089/mserver5
tcp 0 0 0.0.0.0:50001 0.0.0.0:* LISTEN 24093/mserver5
tcp 0 0 0.0.0.0:50002 0.0.0.0:* LISTEN 24097/mserver5
tcp 0 0 0.0.0.0:50003 0.0.0.0:* LISTEN 24101/mserver5
# check status of all databases
monetdb@web:/local/monetdb/bin> ./monetdb status
name state uptime crashes
DB1 running 50s 0
DB4 running 44s 0
DB3 running 46s 0
DB2 running 48s 0
# attempt to connect via merovingian, at jdbc:monetdb://web:50050/DB1
java.sql.SQLException: no such database 'DB1', please create it first
at nl.cwi.monetdb.jdbc.MonetConnection.<init>(MonetConnection.java:219)
at nl.cwi.monetdb.jdbc.MonetDriverconnect(MonetDriver.java:158)
# attempt to connect directly to a database, jdbc:monetdb://web:50000/DB1
connection successful
# stop all processes
kill -INT $(pidof merovingian)
# try starting databases by merovingian
startproc -s -u monetdb /local/monetdb/merovingian DB1 DB2 DB3 DB4
# attempt to connect to jdbc:monetdb://web:50050/DB1, still the same error
java.sql.SQLException: no such database 'DB1', please create it first
at nl.cwi.monetdb.jdbc.MonetConnection.<init>(MonetConnection.java:219)
at nl.cwi.monetdb.jdbc.MonetDriver.connect(MonetDriver.java:158)
Environment:
Linux 32 bit (OpenSuse 10.2), nightly=current 2008-04-04
# MonetDB server v5.5.0, based on kernel v1.23.0
# Compiled for i686-pc-linux-gnu/32bit with 32bit OIDs dynamically linked
java version "1.5.0_13"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.50_13-b05)
MonetDB Native Driver
1.7 (Canephora_p1 20080213 based on MCL v1.2)