Error -25588 and errno 22 from shmat()
Posted in 1999
Topics: Installation, Setup & Upgrades, Connectivity: ESQL/C, 4GL & Embedded SQL, Server Administration, Transactions, Locking & Isolation, Logging & Checkpoints, Networking & sqlhosts Configuration, Versions, Editions & End-of-Life
Hi all -
Solaris 2.5.1 Generic_103640-08
IDS 7.30.UC7
ESQL 7.24.UC7
I've recently installed a machine with the above config
and am now trying to compile some software packages.
The software in question used to run against Online 5.10.
I'm having a problem with some of the larger binaries.
Some of the compiled programs will fail to connect to
the server with the following error:
SQL: -25588 The appl process cannot connect to Dynamic server informix7
ISAM: 4 Interrupted system call.
Other programs executing the same subroutine do not fail.
The code is nothing more than:
$char dbname = "blah";
EXEC SQL DATABASE :dbname;
online.log is as clean as could be hoped for.
I've tried with EXEC SQL CONNECT TO instead, but to no avail.
I watched the processes with truss and found that the executables
that fail do so on the following system call:
shmat(610, 8388608, 0) = Errno 22 [EINVAL]
( 610 is the shmid of the server's shmem segment in this
case ). The programs that are working instead show:
shmat(610, 8388608, 0) = 0x00800000
Since 8388608 = 0x00800000 = The value I had for SHMBASE,
I figured I would try changing SHMBASE - no good, although
that makes for some interesting errors if you're too
naive about it.....
I get the same results if i compile the code with
the static libs or the dynamic libs.
I tried different combinations of entries in sqlhosts
( shmem, sockets, etc ) and they all seem to fail the
same way.
My config info is below. Does anyone have any ideas?
Thanks,
Ben <ben@bu.edu>
sqlhosts
--------
informix7 onipcshm apollo informix7
informix7tcp ontlitcp apollo informix7tcp
services
--------
informix7 1549/tcp
informix7tcp 1550/tcp
onconfig excerpts
-----------------
SERVERNUM 0 # Unique id corresponding to a Dynamic
DBSERVERNAME informix7 # Name of default database server
DBSERVERALIASES informix7tcp # List of alternate dbservernames
NETTYPE ipcshm,2,200,CPU # Configure poll thread(s) for nettype
NETTYPE tlitcp,2,200,NET # Configure poll thread(s) for nettype
DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed
RESIDENT 0 # Forced residency flag (Yes = 1, No = 0)
MULTIPROCESSOR 0 # 0 for single-processor, 1 for
NUMCPUVPS 10 # Number of user (cpu) vps
SINGLE_CPU_VP 0 # If non-zero, limit number of cpu vps to
LOCKS 64000 # Maximum number of locks
BUFFERS 6000 # Maximum number of shared buffers
NUMAIOVPS # Number of IO vps
PHYSBUFF 320 # Physical log buffer size (Kbytes)
LOGBUFF 32 # Logical log buffer size (Kbytes)LOGSMAX 60 # Maximum number of logical log files
CLEANERS 1 # Number of buffer cleaner processes
SHMBASE 0x0A000000L # Shared memory base address
SHMVIRTSIZE 8000 # initial virtual shared memory segment
SHMADD 8192 # Size of new shared memory segments
SHMTOTAL 0 # Total shared memory (Kbytes).
CKPTINTVL 300 # Check point interval (in sec)
LRUS 8 # Number of LRU queues
LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit
LTXHWM 50 # Long transaction high water mark
LTXEHWM 60 # Long transaction high water mark
TXTIMEOUT 300 # Transaction timeout (in sec)
STACKSIZE 32 # Stack size (Kbytes)
Mmm,
I had this exact same problem after upgrading to this version on HP-UX 10.20
and it was due to the kernel parameters for semaphores being set too low, it
was the semaphore undo structures which needed to be changed in my case.
Hope that helps.
--
---------------------------------------
Tony Flaherty aef@mfs.misys.co.uk
Analyst Programmer
Misys Financial Systems
All statements and opinions are my own,
Misys don't pay me enough to have opinions
on their behalf
.
Ben Fersenheim wrote in message <7r6oth$1vv$1@news.xmission.com>...
>
>Hi all -
>
>Solaris 2.5.1 Generic_103640-08
>IDS 7.30.UC7
>ESQL 7.24.UC7
>
>I've recently installed a machine with the above config
>and am now trying to compile some software packages.
>The software in question used to run against Online 5.10.
>I'm having a problem with some of the larger binaries.
>
>Some of the compiled programs will fail to connect to
>the server with the following error:
>
>SQL: -25588 The appl process cannot connect to Dynamic server informix7
>ISAM: 4 Interrupted system call.
>
>Other programs executing the same subroutine do not fail.
>The code is nothing more than:
>
>$char dbname = "blah";
>EXEC SQL DATABASE :dbname;
>
>online.log is as clean as could be hoped for.
>
>I've tried with EXEC SQL CONNECT TO instead, but to no avail.
>I watched the processes with truss and found that the executables
>that fail do so on the following system call:
>
>shmat(610, 8388608, 0) = Errno 22 [EINVAL]
>
>( 610 is the shmid of the server's shmem segment in this
>case ). The programs that are working instead show:
>
>shmat(610, 8388608, 0) = 0x00800000
>
>Since 8388608 = 0x00800000 = The value I had for SHMBASE,
>I figured I would try changing SHMBASE - no good, although
>that makes for some interesting errors if you're too
>naive about it.....
>
>I get the same results if i compile the code with
>the static libs or the dynamic libs.
>
>I tried different combinations of entries in sqlhosts
>( shmem, sockets, etc ) and they all seem to fail the
>same way.
>
>My config info is below. Does anyone have any ideas?
>
>Thanks,
>Ben <ben@bu.edu>
>
>sqlhosts
>--------
>informix7 onipcshm apollo informix7
>informix7tcp ontlitcp apollo informix7tcp>
>services
>--------
>informix7 1549/tcp
>informix7tcp 1550/tcp
>
>onconfig excerpts
>-----------------
>SERVERNUM 0 # Unique id corresponding to a Dynamic
>DBSERVERNAME informix7 # Name of default database server
>DBSERVERALIASES informix7tcp # List of alternate dbservernames
>NETTYPE ipcshm,2,200,CPU # Configure poll thread(s) for nettype
>NETTYPE tlitcp,2,200,NET # Configure poll thread(s) for nettype
>DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed
>RESIDENT 0 # Forced residency flag (Yes = 1, No = 0)
>MULTIPROCESSOR 0 # 0 for single-processor, 1 for
>NUMCPUVPS 10 # Number of user (cpu) vps
>SINGLE_CPU_VP 0 # If non-zero, limit number of cpu vps to
>LOCKS 64000 # Maximum number of locks
>BUFFERS 6000 # Maximum number of shared buffers
>NUMAIOVPS # Number of IO vps
>PHYSBUFF 320 # Physical log buffer size (Kbytes)
>LOGBUFF 32 # Logical log buffer size (Kbytes)>LOGSMAX 60 # Maximum number of logical log files
>CLEANERS 1 # Number of buffer cleaner processes
>SHMBASE 0x0A000000L # Shared memory base address
>SHMVIRTSIZE 8000 # initial virtual shared memory segment
>SHMADD 8192 # Size of new shared memory segments
>SHMTOTAL 0 # Total shared memory (Kbytes).
>CKPTINTVL 300 # Check point interval (in sec)
>LRUS 8 # Number of LRU queues
>LRU_MAX_DIRTY 60 # LRU percent dirty begin cleaning limit
>LRU_MIN_DIRTY 50 # LRU percent dirty end cleaning limit
>LTXHWM 50 # Long transaction high water mark
>LTXEHWM 60 # Long transaction high water mark
>TXTIMEOUT 300 # Transaction timeout (in sec)
>STACKSIZE 32 # Stack size (Kbytes)>
>
>
Related threads
- what's the matter with error -25588
- Re: "Network down" on fresh install
- The appl process cannot connect
- Error 25588 : IDS 7.31UD1 on Solaris8