Link to home
Start Free TrialLog in
Avatar of defcon1
defcon1

asked on

Informix Shared Seg. Mem. error at initialization


 After just installing Informix 9.21 on Solaris 8 which is running on an Ultra 2 with 512Mb of RAM, I try "oninit"
which returns the error message to the log:
 shmat[EMFILE][24]: out of shared memory segments, check system SHMSEG

 mnt_shm_init: can't create resident segment


 I've copied the onconfig file from an Ultra 10 with same OS and Infomix version to the Ultra 2 that gives the error message.
Avatar of gandalf94305
gandalf94305

Increase SHMSEG. There may be more than this Informix running, using shared memory segments.

In /etc/system:

set shmsys:shminfo_shmmax = 268435456
set shmsys:shminfo_shmseg = 32
set shmsys:shminfo_shmmni = 300

would be typical. Use "ipcs -ma" to find out who uses shm segments, how many are available, and what their sizes are.

Cheers,
--gandalf.
Avatar of defcon1

ASKER


 In regards to shared memory settings, are they machine dependent or just a function of how much RAM is in the box?
 There are no other users or apps except Informix.
 I copied the shared memory settings from an Ultra 10 that we have with the same installation of Informix. That
seemed to fix the shared memory intialization error. Although now "oninit" says it can not open the "rootdbs" due to Informix error code = 2 ,which means no such file or directory exsits. I asked this question: http://www.experts-operating_Systems/Solaris/Q_20336942.html
I think this might be the reason Informix can not find the dbroot space because the partitions were created with filesystems at OS installation time;
I've tried using the Solaris device name which is owned by Informix(bypassing the symbolic link) and received the same error.
 
ASKER CERTIFIED SOLUTION
Avatar of gandalf94305
gandalf94305

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of defcon1

ASKER


 Obscurity !

 I think Informix is 2nd only to DB2 ; but, I can see
why they almost went bankrupt.
 I had to dig to find the needed "oninit -i" command that initializes the rootdbspace for the first time.
 You think they might put this command front and center.
 Anyway, that was the problem along with the shared
memory settings in Solaris's /etc/system .

 Thank you Gandalf for the help

No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:
 - Answered by: gandalf94305
Please leave any comments here within the
next seven days.

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER !

Nic;o)
Force accepted as proposed

modulo

Community Support Moderator
Experts Exchange