Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Which background process regulates amount of pga memory per session in 10g ? Thanks, rm.

Re: Which background process regulates amount of pga memory per session in 10g ? Thanks, rm.

From: Mladen Gogala <gogala_at_sbcglobal.net>
Date: Mon, 05 Sep 2005 02:15:21 GMT
Message-ID: <pan.2005.09.05.02.15.20.347112@sbcglobal.net>


On Mon, 05 Sep 2005 01:40:05 +0000, HansF wrote:

> Ummmm ... neither note discusses PGA. Everything I read is that MMAN
> manages SGA.

Yeah, you're right, I wasn't reading carefully. Well, the next most likely candidate would be the good, old PMON. PGA is a process resource, so it should be managed by the process that manages process resources.

There must be some "conductor" process which would send a message like "shrink your sort area size to n kilobytes" to the dedicated server process when the total PGA area exceeds the PGA_AGGREGATE_TARGET. Also, every dedicated server should report any PGA allocation operation to the mystery process. I am not sure about the exact protocol of this communication, but it must use IPC as allocation/deallocation of memory must be done within the context of the shared server process. My guess is that this is the MMAN process, but it might also be PMON. I would be surprised, however, if that was the case. PMON is busy enough with the things like session/process/transaction entries and locks. I find the "Concepts" manual incredibly incomplete in this respect. The right way to find out would be to use strace on MMAN, MMON and PMON and see if there are differences in initialization when WORKAREA_SIZE_POLICY is changed.

-- 
http://www.mgogala.com
Received on Sun Sep 04 2005 - 21:15:21 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US