Hello everybody,

We, I mean my company recently put our new Solaris 2.7 server into
production. Software installed on this machine includes:
Informix 9.21
Apache 1.3.19
Perl 5.6.0
mod_perl 1.25
DBI 1.14
DBD-Informix 1.00 PC1
Mason 1.0

Connection type for Informix was just ontlitcp.

After some time, we experienced some errors reported from Informix, both
in console mode and from Apache. Here are errors descriptions:

-25574  Network driver cannot open the network device.
 
A system call has failed. See the UNIX system administrator for
assistance.
 
-12     Not enough core.
 
An operating-system error code with the meaning shown was unexpectedly
returned to the database server. Core probably refers to data space in
memory that an operating-system function needed. Look for other
operating-system error messages that might give more information.



In the same time ssh and some other TCP services worked quite good, no
problem.

Because this server is in production, after not successfull try to
restart Informix (could not initialize shared memory), I just restarted
the whole server. Then I thought let's try some other connection type
for Informix and installed one more alias server using onipcshm (IPC
over shared memory). This works fine for all console Perl programs
connecting through the same DBD::Informix module, but it doesn't work
for mod_perl invoked scripts and of course no for Mason also. So,
finally we used shared memory connection for Apache WebDatablade server
and console programs triggered by cron, but TLI over TCP/IP connection
for separate Apache with mod_perl running on different port. The firsta
Apache running on port 80 proxies requests back and forth to mod_perl
enabled Apache. When problem with no core on /dev/tcp appeared again
(after few days), then this mod_perl Apache server stops connecting to
the database reporting 500 messages. Here are errors reported in Apache
error log:

-25588  The appl process cannot connect to Dynamic Server 2000
<server-name>.
 
An error in the application can produce this message. Check your
CONNECT statement and the sqlhosts file. A system failure can also
produce this message. If you can find no immediate cause for the
failure, note the circumstances and contact your database server
administrator for assistance.
 
The shared memory communication subsystem is down or not functioning.
Contact the database server administrator to report the problem.
 
 
-25588  The appl process cannot connect to the database server
<server-name>.
 
An error in the application can produce this message. Check your
CONNECT statement and the sqlhosts file. A system failure can also
produce this message. If you can find no immediate cause for the
failure, note the circumstances and contact your database server
administrator for assistance.
 
The shared memory communication subsystem is down or not functioning.
Contact the database server administrator to report the problem.

and ISAM error 4, which means:

-4      Interrupted system call.
 
An operating-system error code with the meaning shown was unexpectedly
returned to the database server. You might have pressed the interrupt
key at a crucial moment, or the software might have generated an
interrupt signal such as the UNIX command kill. Look for other
operating-system error messages that might give more information. If
the error recurs, please note all circumstances and contact Informix
Technical Support.

CGI scripts that are invoked as conventional CGI with the same Apache
work OK using shared memory or whatever. I am trying to resolve the
first problem with /dev/tcp device and I
tweaked some parameters with ndd (after the problem started), but I am
not sure yet if I fixed anything. Is it good idea at all to use
connection through shared memory (at least I got information that it is
not secure but it is the fastest way)? Thank you in advance.

Best regards,
Boban Acimovic
UNIX SysAdmin

Reply via email to