01-19-05, 05:10 #1Registered User
- Join Date
- Aug 2004
Unanswered: shared memory segment not getting free
We have HP-UX11i OS and informix 9.40 FC2 database for Baan IVc4 ERP application.
when we start informix it allocates initial 2 memory segments one resident and other virtual.
as and when require database allocates additional memory segment.
we see the status of these memory segments thru onstat -g seg command.
now we are facing a peculiar problem from last two days i.e database goes on allocating memory segment without releasing any one already allocated. i.e in onstat -g seg command all the segments show blkfree as zero. earlier these segments were reused after getting blkfee and no. of segments were up to 7. now this figure goes up to 240 and informix gets down saying not enough shared memory segment to allocate out of virtual shared memort.
we have not changed any kernel and informix configuration and no. of users are also the same.
what could be the reason that segments are not getting released for reuse insted of assining new segment.
check point occures with regular interval of 3 to 5 secs.
01-19-05, 11:54 #2Registered User
- Join Date
- May 2004
Are you running onmode -F? This causes informix to look at the virtual segment and free up some unused space. This might help, especially if you run it as an script every so often, that may allow you to stay up longer while you look for the source of the problem.
If you are rapidly adding new virtual segments my first thought is it may be a program logic issue like creating new cursors without closing them, did you change or add any new code?Keith Brownlow
ServerMetrics DB Monitoring (www.servermetrics.com)