Fwd: Anyone running a RAC on Linux?

From: Tanel Poder <tanel_at_tanelpoder.com>
Date: Thu, 28 Feb 2013 02:31:33 +0200
Message-ID: <CAMHX9J+D6fb3cPEZBbPdF0Re1h-_i0P12-8LFsVa+-FYZA8dhg_at_mail.gmail.com>

resending due to over-quoting..
---------- Forwarded message ----------
From: Tanel Poder <tanel_at_tanelpoder.com> Date: Thu, Feb 28, 2013 at 1:52 AM
Subject: Re: Anyone running a RAC on Linux? To: oratune <oratune_at_yahoo.com>
Cc: "Christopher.Taylor2_at_parallon.net" <Christopher.Taylor2_at_parallon.net>, " Dave.Herring_at_acxiom.com" <Dave.Herring_at_acxiom.com>, "oracle-l_at_freelists.org" <oracle-l_at_freelists.org>

The actual priorities in kernel-land are positive, so the negative numbers you see are something that the userland tools and libraries calculate/derive for you. -51 is weird though, perhaps it's a bug with ps or some library function. You can use ps to report which scheduler policy is used for that process, perhaps that sheds some light.

Are you on RHEL6+ by any chance? The newer kernels show the actual kernel prio and policy in proc filesystem:

[root_at_oel6 ~]# grep ^p /proc/40695/sched

policy                             :                    2
prio                               :                   79

The policy #2 corresponds to round-robin real time policy as shown in sched.h:

$ grep SCHED /usr/include/linux/*sched.h*
#ifndef _LINUX_SCHED_H
#define _LINUX_SCHED_H
#define SCHED_NORMAL 0
#define SCHED_FIFO 1
#define *SCHED_RR 2*
#define SCHED_BATCH 3

/* SCHED_ISO: reserved but not implemented yet */
#define SCHED_IDLE 5

/* Can be ORed in to make sure the process is reverted back to SCHED_NORMAL on fork */
#define SCHED_RESET_ON_FORK 0x40000000

Also check the ownership and setuid bit on the oradism binary too. In addition to the Solaris) DISM memory locking work, this binary is used for elevating the priority of the *_high_priority_processes* processes (as a regular process can't just upgrade its priority to real time).

$ ls -l $ORACLE_HOME/bin/*oradism*
-*rws*r-x--- 1 *root* dba 71793 Sep 5 2010 /u01/app/oracle/product/11.2.0/db_1/bin/oradism

So if you've cloned/copied Oracle homes just via a copy or untarred as oracle user (not root), then this setuid bit gets lost and Oracle can't hike the required processes priority during startup.

This may explain some of the differences in priorities, but -51 is weird on linux ...

*Tanel Poder*
Enkitec (The Exadata Experts)
Training <http://blog.tanelpoder.com/seminar/> |
 | Exadata<http://www.amazon.com/Expert-Oracle-Exadata-Apress/dp/1430233923>
 | Voicee App <http://voic.ee/>

On Wed, Feb 27, 2013 at 11:21 PM, David Fitzjarrell <oratune_at_yahoo.com>wrote:

> My guess would be the latter case -- new 'features' and parameters rarely
> work as expected or intended when introduced.  As stated before
> was a rough release on many fronts.
> David Fitzjarrell

Received on Thu Feb 28 2013 - 01:31:33 CET

Original text of this message