ORA-27154: post/wait create failed

I got ” ORA-27154: post/wait create failed ”  error in Oracle database.

 

ORA-27154: post/wait create failed

 

Details of error are as follows.

Attempting to startup instance, fails with error

ORA-27154: post/wait create failed
ORA-27300: OS system dependent operation:semget failed with status: 28
ORA-27301: OS failure message: No space left on device
ORA-27302: failure occured at: sskgpcreates
   

 

 

post/wait create failed

 

SEMMNS is set to 230 against 1024(Minimum Recommended).
The low value of SEMMNS is preventing to start the instance.

The SEMMNS parameter should be set to the sum of the PROCESSES parameter for each Oracle database, adding the largest one twice, and then adding an additional 10 for each database.

SEMMSL is set to 60 against 256 (Minimum Recommended).

This is recommended in both the Oracle 9.2 and 10.2 installation guides.

 

To implement the solution, please execute the following steps:

1. Set  the kernel parameter as recommended in

Oracle 9.2 Installation Guide:
SEMMNS 1024
SEMMSL 256

Oracle 10.2 Installation Guide (for Solaris 8 and 9):
semsys:seminfo_semmns 1024
semsys:seminfo_semmsl 256

 

(refer to 10.2 Installation Guide for specific recommendations on Solaris 10 parameter settings)

Or

2. Reduce the Processes in Init.ora file to small value.
(This is useful when you don’t want to reboot the Unix server as a change of kernel setting requires a reboot for changes to be reflected)

 

NOTE:
1. If you have previously changed your kernel for another program to levels equal to or higher than the levels recommended in the Installation Guide, then do not change the settings. If the levels are too low, change them to levels at least as high as those in the table.

2. If you change the kernel settings, save the /etc/system file and restart the system to reflect the change

 

On a linux server, when an additional database instance is brought up, getting errors:


SQL> startup nomount
ORA-27154: post/wait create failed
ORA-27300: OS system dependent operation:semget failed with status: 28
ORA-27301: OS failure message: No space left on device
ORA-27302: failure occurred at: sskgpcreates

 

 

An additional database has been created on a linux server.
PROCESSES parameter in init.ora set to the correct value, accordingly.

Linux Kernel Parameter for Semaphore – Total 32000 semaphore are available in the system but still gets an error – ORA-27300.


$ ipcs -ls

------ Semaphore Limits --------
max number of arrays = 128      // SEMMNI
max semaphores per array = 250      // SEMMSL
max semaphores system wide = 32000     // SEMMNS
max ops per semop call = 100    // SEMOP
semaphore max value = 32767

 

 

In theory, 32000 semaphores are available in the system and one semaphore identifier can accommodate a maximum of 250 semaphores with
the configuration above.

But ipcs command shows each semaphore identifier accomodates maximum of 156 semaphores by Oracle.

$ ipcs << For this case, it has around 100 semaphore identifiers being used without bringing up the additional instance.
..


------ Semaphore Arrays --------
key semid owner perms nsems
0x450e15bd 0 root 666 1
0x0000cace 32769 root 666 1
0x358b172c 327683 oracle 660 104
0x9053d038 11075588 oracle 660 156
0x9053d039 11108357 oracle 660 156
0x9053d03a 11141126 oracle 660 156
0x9053d03b 11173895 oracle 660 156
..

According to this figure, the maximum available semaphores in this server will be 156 x 128 = 19968, not 32000.

 

 

SEMMNI should be increased to accomodate more semaphores.

1. Query the current semaphore values in the kernel

     # /sbin/sysctl -a | grep sem

 

2. Modify SEMMNI value in the /etc/sysctl.conf.


From
kernel.sem = 250 32000 100 128

To
kernel.sem = 250 32000 100 200


3. # /sbin/sysctl -p

 

 

 

 

Do you want to learn Oracle Database for Beginners, then read the following articles.

Oracle Tutorial | Oracle Database Tutorials for Beginners ( Junior Oracle DBA )

 

About Mehmet Salih Deveci

I am Founder of SysDBASoft IT and IT Tutorial and Certified Expert about Oracle & SQL Server database, Goldengate, Exadata Machine, Oracle Database Appliance administrator with 10+years experience.I have OCA, OCP, OCE RAC Expert Certificates I have worked 100+ Banking, Insurance, Finance, Telco and etc. clients as a Consultant, Insource or Outsource.I have done 200+ Operations in this clients such as Exadata Installation & PoC & Migration & Upgrade, Oracle & SQL Server Database Upgrade, Oracle RAC Installation, SQL Server AlwaysOn Installation, Database Migration, Disaster Recovery, Backup Restore, Performance Tuning, Periodic Healthchecks.I have done 2000+ Table replication with Goldengate or SQL Server Replication tool for DWH Databases in many clients.If you need Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS Consultancy and Training you can send my email adress [email protected].-                                                                                                                                                                                                                                                 -Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS ve linux Danışmanlık ve Eğitim için  [email protected] a mail atabilirsiniz.

Leave a Reply

Your email address will not be published. Required fields are marked *