Hello,

In the process of deploying Oracle 10g on top of SFRAC 5.0 running 
Solaris 10, I've noticed the following issues around setting shared 
memory parameters for Oracle. The Oracle Agent does not assume the 
project that I have assigned to the Oracle user? It is assuming the 
system project, and when I try to add the resource controls to that 
system or the default project, that does not work either?

Here are the details:

Trying to use Solaris' new project methodology to establish the IPC 
tunables, here is what I did:

# projadd -c 'IPC Tunables' -U oracle -G dba -K 
'project.max-shm-memory=(privileged,16gb,deny)' user.oracle

Now, as the Oracle user, this allows the DB to open without issue.

However, when I configure the Oracle VCS agent to start the DB, it 
appears that the VCS processes are assuming the "system" project, and 
when they start the database processes, they are assuming the roles of 
that project, rather than those of the oracle user that I have defined?

Here is the error in the messages file when the DB tries to open from 
the VCS agent:

[ID 883052 kern.notice] privileged rctl project.max-shm-memory (value 
6291603456) exceeded by project 0

So I logically thought I could apply the same tunings to the system 
project, but that does not work either.

This is what my project file looks like:

system:0::::process.max-sem-nsems=(privileged,4096,deny);\
process.max-sem-ops=(privileged,4096,deny);project.max-sem-ids=(privileged,4096,deny);\
project.max-shm-ids=(privileged,512,deny);project.max-shm-memory=(privileged,17179869184,deny)
user.root:1::::
noproject:2::::
default:3::::
group.staff:10::::
user.oracle100:IPC 
Tunables:oracle:dba:process.max-sem-nsems=(privileged,4096,deny);\
process.max-sem-ops=(privileged,4096,deny);project.max-sem-ids=(privileged,4096,deny);\
project.max-shm-ids=(privileged,512,deny);project.max-shm-memory=(privileged,17179869184,deny)

What I have been able to do is change the parameters on the fly with prctl:

# ps -ef -o pid,project,args | grep -i OracleAgent --> to get the PID 
and Project
# prctl -n project.max-shm-memory -i process <PID> --> to display
# prctl -n project.max-shm-memory -r -v 16gb -i process <PID> --> to set

Once I do that, it allows me to start the database via the Oracle Agent.

Has anyone run into this issue?

This may be me not properly setting up the system project, but I figure 
someone must have run into this and they could share how they resolved it.

I'm hoping there is an easy solution out there, rather than having to 
always change the parameter on the running Agent?

Hope that all makes sense.

Thanks.

-Bryan

PS. What I have realized is that if I put the shmmax parameters in the 
/etc/system that works, but I was hoping to have to fall back into that 
routine.

-- 
************************************************
Bryan Pepin
Unix Enterprise Systems

EMC Corporation
4400 Computer Drive
Westboro, MA 01580
508-898-4776
[EMAIL PROTECTED]

_______________________________________________
Veritas-ha maillist  -  Veritas-ha@mailman.eng.auburn.edu
http://mailman.eng.auburn.edu/mailman/listinfo/veritas-ha

Reply via email to