Database Startup On Solaris 10 Fails With Ora-27102 Out Of Memory Error (Doc ID 399895.1)

Database Startup On Solaris 10 Fails With Ora-27102 Out Of Memory Error (Doc ID 399895.1) To BottomTo Bottom

 

APPLIES TO:

Oracle Database - Enterprise Edition - Version 9.2.0.8 to 12.1.0.2 [Release 9.2 to 12.1]
Solaris Operating System - Version 10 10/09 U8 to 11.3 [Release 10.0 to 11.0]
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Solaris on SPARC (64-bit)
Oracle Solaris on x86-64 (64-bit)
Sun Solaris SPARC (64-bit)
Solaris Operating System (SPARC 64-bit)



***Checked for relevance on 21-Jul-2017***

SYMPTOMS

Database startup on Solaris 10 fails with the following errors.

SQL> startup
ORA-27102: out of memory
SVR4 Error: 22: Invalid argument

And the alert log shows something similar to the following.

WARNING: EINVAL creating segment of size 0x000000002a000000
fix shm parameters in /etc/system or equivalent

CHANGES

Upgraded the OS to Solaris 10

CAUSE

Solaris 10 sets the shared memory segments on projects, and it is suspected to be caused by projects not being setup correctly.  Because of this, there is not sufficient SHMMAX available for Oracle to allocate the SGA, so startup fails.

SOLUTION

It is still permitted in Solaris 10 to set the limits in the /etc/system file, which will allow database startup in the interim, until can resolve the issues with projects settings.

For example, a sample /etc/system entry setting SHMMAX = 6GB.

set shmsys:shminfo_shmmax=6442450944
set semsys:seminfo_semmni=1024
set semsys:seminfo_semmsl=1024
set shmsys:shminfo_shmmni=100

Database started with above settings ok, and missing project settings in this case were the following.
1. # projadd -c "Oracle" 'user.oracle'
2. # projmod -s -K "project.max-shm-memory=(privileged,6GB,deny)" 'user.oracle'

Wrong setting for zone.max-shm-memory can also cause these errors. To verify the settings.
$ id -p
$ prctl -i project

The project.max-shm-memory and zone.max-shm-memory are limits on the total size of all shared memory segments [within a project or zone].

REFERENCES

NOTE:169706.1 - Oracle Database (RDBMS) on Unix AIX,HP-UX,Linux,Mac OS X,Solaris,Tru64 Unix Operating Systems Installation and Configuration Requirements Quick Reference (8.0.5 to 11.2)
NOTE:429191.1 - Kernel setup for Solaris 10 and Solaris 11 using project files
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章