I have a strange error that is occurring in an ESQL/C program.
System:
Pyramid MIS-S running DCOSX 1.1-94c079
Informix
Engine 7.10.UD2
ESQL/C 7.10.UD1
I am in the process of porting one of our applications from 4.11 to the
Informix version listed above. When I start this program I get the
following error on the 'database :dbname' statement:
_________________________________________________________________
-25588 The appl process cannot connect to OnLine server server-name.
This error can be caused by an error in the application.
Check your CONNECT statement and the sqlhosts file. The
error can also be caused by a system failure. If no immediate
cause can be found for the failure, note the circumstances
and contact your OnLine database administrator for
assistance.
The shared memory communication subsystem is down or
not functioning. Contact the OnLine database administrator
to report the problem.
________________________________________________________
Now here is the strange part. The database open statement is in a library
function that is included in several other executables. They all use the
same function, same library. When I start up this application, I use a
script which fires off several, (5) ESQL based programs one after another.
The processes run in the background, so all 5 are running concurrently.
Only one of these programs gets the above error. The rest all fire up
fine. They all use the same environment variables, and I have checked the
value of the host var that contains the DB name and it is correct.
Informix puts the INFORMIXSERVER name in sqlca.sqlerrm when I report the
error, and that looks fine too. On a whim, I changed my INFORMIXSERVER
from my shared memory connection (ipcshm) to my TCP based connection
(tlitcp), and now the problem program connects up fine.
Being that these are 4.1 style programs, they use the database/close
database syntax instead of the CONNECT syntax, but I have ported over 50
other executables using the same syntax (ESQL, 4GL, SQL scripts, etc.), and
they all connect correctly to the ipcshm connection.
I thought it might have to do with the number of concurrent processes, but
programs that appear later in the startup script start up fine, and I have
tried just running this program alone.
Any ideas?
Thanks.
--
Erik Jones | erik@anasazi.com