out of shared memory segments, check system SHMSEG on solaris 8 Informix crashed
Posted in 2005
Topics: Platform-Specific Issues
I have a serious informix problem
Server: informix 9.3 on a Sun System SUNW,Netra-T12 8 CPU's
One of our informix server crashes with the following error:
14:27:34 shmat: [EMFILE][24]: out of shared memory segments, check systemSHMSEG
We use a Solaris 8 System with the following /etc/system entries:
set shmsys:shminfo_shmmin=100
set shmsys:shminfo_shmmni=500
set shmsys:shminfo_shmseg=100
set semsys:seminfo_semmap=256
set semsys:seminfo_semmni=4096
set semsys:seminfo_semmns=4096
set semsys:seminfo_semmnu=4096
set semsys:seminfo_semmsl=25
set semsys:seminfo_semopm=10
set semsys:seminfo_semume=64
set semsys:seminfo_semvmx=32767
set semsys:seminfo_semaem=16384
set shmsys:shminfo_shmmax=12000000000
We have 16 giga Ram
What do we need to change to increase the availability ?
> 14:27:34 shmat: [EMFILE][24]: out of shared memory segments, check system> SHMSEG
> ...
> We use a Solaris 8 System with the following /etc/system entries:
> ...
> set shmsys:shminfo_shmseg=100
> What do we need to change to increase the availability ?
You have to increase shmseg setting in the /etc/system, say, to:
set shmsys:shminfo_shmseg=200
save the change and restart Solaris.
In any case even 100 segments are too much. So, please, check the values of
the following
ONCONFIG parameters for your informix server:
SHMVIRTSIZE
SHMADD
and the results of onstat -g seg command (number of segments) under the
typicall workload.
You may have to increase their values, if really do have 100 segments.
Here are the infos:
SHMVIRTSIZE 1024000 # initial virtual shared memory segment size
SHMADD 135168 # Size of new shared memory segments
(Kbytes)
This is the onstat -p output:
myserver:/apps/informix/ids.93/etc: onstat -p
IBM Informix Dynamic Server Version 9.30.FC6X1 -- On-Line -- Up 1 days
08:37:33 -- 15475712 Kbytes
Profile
dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits %cached
8529985 10430992 8732481454 99.90 35362160 70342464 152997933 76.89
isamtot open start read write rewrite delete commit
rollbk
4784898826 4458015 108208777 4141329346 9298309 33934246 7875144 51700
5
gp_read gp_write gp_rewrt gp_del gp_alloc gp_free gp_curs
5465 152 3682 0 0 0 19
ovlock ovuserthread ovbuff usercpu syscpu numckpts flushes
0 0 0 210241.74 18141.72 829 1815
bufwaits lokwaits lockreqs deadlks dltouts ckpwaits compress seqscans
1757690 190438 10116162327 0 0 4046 429728 3341660
ixda-RA idx-RA da-RA RA-pgsused lchwaits
1192500 5151 930185 2119588 114252903
"Valeriy Kravchuk" <openxs@ipnet.kiev.ua> wrote in message
news:d7kd83$1ud5$1@news.dg.net.ua...
> > 14:27:34 shmat: [EMFILE][24]: out of shared memory segments, checksystem
> > SHMSEG
> > ...
> > We use a Solaris 8 System with the following /etc/system entries:
> > ...
> > set shmsys:shminfo_shmseg=100
> > What do we need to change to increase the availability ?
>
> You have to increase shmseg setting in the /etc/system, say, to:
>
> set shmsys:shminfo_shmseg=200
>
> save the change and restart Solaris.
>
> In any case even 100 segments are too much. So, please, check the values
of
> the following
> ONCONFIG parameters for your informix server:
>
> SHMVIRTSIZE
> SHMADD>
> and the results of onstat -g seg command (number of segments) under the
> typicall workload.
>
> You may have to increase their values, if really do have 100 segments.
>
>
>
>
Change SHMVIRTSIZE to 4Gb and SHMADD to 1Gb and restart IDS.
When IDS has started use onmode to manually add
You should move to IDS 10.0 64-bit version where you can have shared
memory
segments more than 4GB.
Related threads
- Posting from the Informix-list
- Migrating from IDS 9.40.UC6 to 11.50.UC3
- Ip for a network session
- questions onstat -g