cancel
Showing results for 
Search instead for 
Did you mean: 

oracle semaphore error

Larry Risser
Occasional Advisor

oracle semaphore error

Has anyone ever seen this problem before? If so, any help would be appreciated.

Our server (N class) did an ungraceful shutdown due to a power outage with no UPS.
Since then the audit log has been filling up with looping semop errors from Oracle
processes.
I have done the following:

Did a full reboot with file system check
Checked all ipcs processes. Only active Oracle instances are showing semop use
Checked the semmns which is well above necessary (5400 semmns, about 600 processes)
Checked memory and vmstat. Seems OK

I'm at a loss. So is HP and Oracle. Any clues would be of great help.

Thanks, Larry
2 REPLIES
Stefan Farrelly
Honored Contributor

Re: oracle semaphore error


It would really help if you could include a copy of the errors from the log.

However, Ive heard before of Oracle not being shutdown correctly (in your case an unplanned crash) and it leaves garbage semaphores around. When you reboot the server, before you start oracle, do any semaphores show up from ipcs -sa ? if so remove them first and then try to start oracle. If you cant find any then as a workaround build a new kernel with a slight increase in semaphores (I know you already have lots free), reboot and retry. This may get around it.
Im from Palmerston North, New Zealand, but somehow ended up in London...
CHRIS ANORUO
Honored Contributor

Re: oracle semaphore error

Hi Larry,

What are the values of semmap, semmni, semmnu and semume?
I advise you set them as follows in relationn to you set value of semmns:(semmap=2048; semmni=2046; semmnu=1024 and semume=512).
You can run ipcs -sob to check for oracle related semaphores if you databases are not started and use ipcrm -s (id) to remove any semaphore sets.
Also ipcs -ts to find out semaphores with no-entry status(OTIME) for owner oracle, then do away with them.
When We Seek To Discover The Best In Others, We Somehow Bring Out The Best In Ourselves.