Hi,

In 10gR2 RAC on IBM AIX we had a database when starting the database in nomount stage we got the following error

SQL> startup nomount
ORA-27504: IPC error creating OSD context
ORA-27300: OS system dependent operation:sendmsg failed with status: 59
ORA-27301: OS failure message: Message too long
ORA-27302: failure occurred at: sskgxpsnd1

However when the root cause of error was improper tcp udp parameter settings which is required in an RAC environment for cache fusion.

The following is the required settings for tcp-udp parameter for RAC environment on IBM-AIX systems

Using the following commands change the values of the following parameters(in AIX):

# no -o tcp_sendspace=262144
# no -o tcp_recvspace=262144
# no -o udp_sendspace=65536
# no -o udp_recvspace=262144

Also the parameter rfc1323 needs to be set to 1 for any TCP/ UDP parameters settings of
over 64K.

no -o rfc1323=1
Adding these entries to /etc/rc.net will ensure that the parameter take effect on every reboot.

Also, the following are the appropriate ulimit settings for RAC environment on IBM AIX systems

As a root user, add the following entries for the root and Oracle users:

root:
fsize = -1
core = 2097151
cpu = -1
data = -1
rss = -1
stack = -1
nofiles = -1

oracle:
fsize = -1
core = 2097151
cpu = -1
data = -1
rss = -1
stack = -1
nofiles = -1

This needs to be done on all nodes of the cluster. A server reboot might be necessary to activate updated limits. After you modify the settings, the “ulimit –a” command should display the following:

# ulimit –a
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) unlimited
stack(kbytes) 2097152
memory(kbytes) unlimited
coredump(blocks) 2097151
nofiles(descriptors) unlimited

Verify the same for the Oracle user. Next, you need to increase Oracle user processes to 8192. You can increase the processes for the Oracle user via the “smit” utility on AIX-based servers.

 

Leave a Reply