Re: Informix 9.40 crash after stress test.
Posted in 2003
Thanks for suggeston
- Sharad
"Bill Dare" <dareb@jevic.com> wrote in message
news:bgbf6v$p1o$1@terabinaries.xmission.com...
>
> The user controls whether he connects using a TCP/IP connection vs. a SHM
> connection by setting the INFORMIXSERVER environment variable or
explicitly
> selecting a server in his SQL. You can see how a user is connected using
> "onstat -g ses".
>
> But that's not your problem here.
>
> Your getting errno 24 because your server is allocating too many shared
> memory segments.
> #define EMFILE 24 /* Too many open files */
>
> With these settings:
>
> SHMVIRTSIZE 87500 # initial virtual shared memory segment size
>
> SHMADD 16384 # Size of new shared memory segments (Kbytes)
>
> SHMTOTAL 419430 # Total shared memory (Kbytes). 0=>unlimited>
> you have the possibility of allocating (419430 - 87500) / 16384 = 20
shared
> memory segments. Obviously more than the OS is configured to allow. Fix
> this particular problem by making SHMADD large enough or SHMTOTAL small
> enough so that you do not exceed SHMSEG. Or set SHMSEG in the kernel to
> allow the number you are allocating.
>
> Of course you still have a problem with a user trying to use to much
virtual
> memory. At least your server will not crash.
>
> Regards,
> Bill Dare
>
>
>
>
>
> > -----Original Message-----
> > From: sharad [SMTP:sha_pawar@hotmail.com]
> > Sent: Thursday, July 31, 2003 8:00 AM
> > To: informix-list@iiug.org
> > Subject: Informix 9.40 crash after stress test.
> >
> > Hi ,
> >
> > I had install informix 9.40 UC2 on AIX 5.2.
> > did anybody has idea how to check informix server is using tcp
connection
> > and not shared memory connection.How to check memory leak in informix
> > server
> > ?
> >
> > Here is some portion of online.log file .
> > ===============================================================
> > 16:28:31 shmat: [EMFILE][24]: out of shared memory segments, checksystem
> > SHMSEG
> >
> > 16:28:31 shmdt: errno = 22
> > 16:28:31 out of virtual shared memory
> >
> > 16:28:31 shmat: [EMFILE][24]: out of shared memory segments, checksystem
> > SHMSEG
> >
> > 16:28:31 shmdt: errno = 22
> > 16:28:31 out of virtual shared memory
> >
> > 16:28:31 Assert Failed: No Exception Handler
> > 16:28:31 IBM Informix Dynamic Server Version 9.40.UC2
> > 16:28:31 Who: Session(16, informix@adolphus, 5002, 40215d00)
> > Thread(40, sqlexec, 401e5e68, 1)
> > File: mtex.c Line: 431
> > 16:28:31 Results: Exception Caught. Type: MT_EX_OS, Context: mem
> > 16:28:31 Action: Please notify IBM Informix Technical Support.
> > 16:28:31 stack trace for pid 32182 written to /tmp/af.410fd5e
> > 16:28:31 See Also: /tmp/af.410fd5e, shmem.410fd5e.0
> > 16:29:06 mtex.c, line 431, thread 40, proc id 32182, No Exception
> > Handler.
> > 16:29:08 The Master Daemon Died
> > 16:29:08 PANIC: Attempting to bring system down
> > ===============================================================> > onconfig :file
> > shared memory not initialized for INFORMIXSERVER 'fpt_server'
> >
> > Configuration File: /dbms/informix/etc/onconfig.file
> >
> >
#*************************************************************************
> > *
> >
> > #
> >
> > # INFORMIX SOFTWARE, INC.
> >
> > #
> >
> > # Title: onconfig.std
> >
> > # Description: Informix Dynamic Server Configuration Parameters
> >
> > #
> >
> >
#*************************************************************************
> > *
> >
> > # Root Dbspace Configuration
> >
> > ROOTNAME rootdbs # Root dbspace name> >
> > ROOTPATH /dbms/informix/data/fpt_data
> >
> > ROOTOFFSET 0 # Offset of root dbspace into device (Kbytes)
> >
> > ROOTSIZE 200000 # Size of root dbspace (Kbytes)> >
> > # Disk Mirroring Configuration Parameters
> >
> > MIRROR 0 # Mirroring flag (Yes = 1, No = 0)
> >
> > MIRRORPATH # Path for device containing mirrored root
> >
> > MIRROROFFSET 0 # Offset into mirrored device (Kbytes)> >
> > # Physical Log Configuration
> >
> > PHYSDBS rootdbs # Location (dbspace) of physical log
> >
> > PHYSFILE 2000 # Physical log file size (Kbytes)> >
> > # Logical Log Configuration
> >
> > LOGFILES 6 # Number of logical log files
> >
> > LOGSIZE 2000 # Logical log size (Kbytes)> >
> > # Diagnostics
> >
> > MSGPATH /dbms/informix/online.log # System message log file path
> >
> > CONSOLE /dev/console # System console message path> >
> > # To automatically backup logical logs, edit alarmprogram.sh and set
> >
> > # BACKUPLOGS=Y
> >
> > ALARMPROGRAM /dbms/informix/etc/no_log.sh # Alarm program path
> >
> > TBLSPACE_STATS 1 # Maintain tblspace statistics> >
> > # System Archive Tape Device
> >
> > TAPEDEV /dev/tapedev # Tape device path
> >
> > TAPEBLK 32 # Tape block size (Kbytes)
> >
> > TAPESIZE 10240 # Maximum amount of data to put on tape (Kbytes)> >
> > # Log Archive Tape Device
> >
> > LTAPEDEV /dev/null # Log tape device path
> >
> > LTAPEBLK 32 # Log tape block size (Kbytes)
> >
> > LTAPESIZE 10240 # Max amount of data to put on log tape (Kbytes)> >
> > # Optical
> >
> > STAGEBLOB # Informix Dynamic Server staging area
> >
> > # System Configuration
> >
> > SERVERNUM 1 # Unique id corresponding to a OnLine instance
> >
> > DBSERVERNAME fpt_server # Name of default database server
> >
> > DBSERVERALIASES # List of alternate dbservernames
> >
> > NETTYPE soctcp,4,150,NET # Configure poll thread(s) for nettype
> >
> > DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed env.
> >
> > RESIDENT 0 # Forced residency flag (Yes = 1, No = 0)
> >
> > MULTIPROCESSOR 0 # 0 for single-processor, 1 for multi-processor
> >
> > NUMCPUVPS 1 # Number of user (cpu) vps
> >
> > SINGLE_CPU_VP 0 # If non-zero, limit number of cpu vps to one
> >
> > NOAGE 0 # Process aging
> >
> > AFF_SPROC 0 # Affinity start processor
> >
> > AFF_NPROCS 0 # Affinity number of processors> >
> > # Shared Memory Parameters
> >
> > LOCKS 2000 # Maximum number of locks
> >
> > BUFFERS 20000 # Maximum number of shared buffers
> >
> > NUMAIOVPS # Number of IO vps
> >
> > PHYSBUFF 32 # Physical log buffer size (Kbytes)
> >
> > LOGBUFF 32 # Logical log buffer size (Kbytes)
> >
> > CLEANERS 1 # Number of buffer cleaner processes
> >
> > SHMBASE 0x30000000 # Shared memory base address
> >
> > SHMVIRTSIZE 87500 # initial virtual shared memory segment size
> >
> > SHMADD 16384 # Size of new shared memory segments (Kbytes)
> >
> > SHMTOTAL 419430 # Total shared memory (Kbytes). 0=>unlimited
> >
> > CKPTINTVL 150 # Check point interval (in sec)
> >
> > LRUS 8 # Number of LRU queues
> >
> > LRU_MAX_DIRTY 60.000000 # LRU percent dirty begin cleaning limit
> >
> > LRU_MIN_DIRTY 50.000000 # LRU percent dirty end cleaning limit> >
> >