Hi all,
My apologies if this problem and solution have already been raised, but
so far I haven't been able to find any definite answer in the archives.
For the last few days I have been trying to get a new install of MaxDB
7.5.0.08 working via ODBC. I got the database working fine, and could
connect to it from sqlcli, from the web sqlstudio, and from the windows
DBM GUI, but not via ODBC (or the SQL Studio).
>From the SQL Studio I got:
"Unable to connect to data source;-709 CONNECT:(connection refused).
Return code: SQL_ERROR (-709)"
It seemed to be a problem with the x_server not finding a particular
file. If you crank up the debugging on it (eg. x_server -i -D10 start),
you get the following:
12857 SERVER Forked child pid 23825
ERR 11311 IPC idfile: 'UserProfileContainer(stat)' open error, No
such file or directory
12858 SERVER Exiting pid 23825 exit code 1
I've noticed a few other posts with similar looking problems, but no
solutions. After 2 days of mucking around and debugging, I finally just
downloaded the source and added an extra debugging message to print the
name of the file it couldn't find, and found that it was looking for
'/var/opt/sdb/data/config/dbname.upc', when it should have been looking
for '/var/opt/sdb/data/config/DBNAME.upc'.
So, I changed my ODBC/SQL Studio settings to connect to 'DBNAME' instead
of 'dbname' and it worked.
I think this is a bug in the x_server (well vserver actually), because
this behaviour has changed since SAPDB 7.4. I tried setting that up and
I could connect regardless of the case used in the db name, so I assume
that somewhere there is no longer a check being done to uppercase the
database name provided by the remote connection.
I'd also like to note that if the debug message had printed the filename
it was trying to find in the first place (which to me is a pretty
standard practice), I would have found the problem 2 days earlier than I
did. On the upside, it did give me a chance to play with the MaxDB build
environment which I must say is very nicely done!
Cheers
Derek Hinchliffe