Home » RDBMS Server » Server Administration » ORA-04030: out of process memory
ORA-04030: out of process memory [message #530006] Fri, 04 November 2011 00:45 Go to next message
Its_me_ved
Messages: 979
Registered: October 2009
Location: India
Senior Member
We recently got the below error in SI and prod environments.

ORA-04030: out of process memory when trying to allocate 82456 bytes (pga heap,control file i/o buffer)
ORA-04030: out of process memory when trying to allocate 4032 bytes (kxs-heap-w,kghsseg : kokeismo)

We did analyze the trace file but did not find any issue other than a dml statement causing deadlock.

I asked for the below information:

1) df - k

They replied: "We use ASM for datafile storage and 'df -k' does not describe ASM. We keep sufficient ASM storage in reserve. Only the operating system and oracle application files reside as mount points on the servers. These are not the issue."

2) ulimit a

xpc02261:(nosid)> ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 1196032
max locked memory (kbytes, -l) 50000000
max memory size (kbytes, -m) unlimited
open files (-n) 65536
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 16384
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited


==========================================
INSTANCE-WIDE PRIVATE MEMORY USAGE SUMMARY
------------------------------------------

Dumping Work Area Table (level=1)
=====================================

Global SGA Info
---------------

global target: 2144 MB
auto target: 134 MB
max pga: 428 MB
pga limit: 857 MB
pga limit known: 0
pga limit errors: 0

pga inuse: 4263 MB
pga alloc: 4346 MB
pga freeable: 39 MB
pga freed: 45733 MB
pga to free: 0 %
broker request: 0

pga auto: 0 MB
pga manual: 0 MB

pga alloc (max): 5469 MB
pga auto (max): 596 MB
pga manual (max): 1 MB

# workareas : 1
# workareas(max): 64


Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,
Data Mining and Real Application Testing options
ORACLE_HOME = /u01/app/oracle/product/11.2.0.1/db
System name: Linux
Node name: xpc02261.ors.xdm.com
Release: 2.6.18-194.11.4.el5
Version: #1 SMP Fri Sep 17 04:57:05 EDT 2010
Machine: x86_64
Instance name: dev1
Redo thread mounted by this instance: 2
Oracle process number: 40
Unix process pid: 7899, image: oracle@xpc02261.ors.xdm.com

Regards
Ved



Re: ORA-04030: out of process memory [message #530016 is a reply to message #530006] Fri, 04 November 2011 02:07 Go to previous messageGo to next message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
ORA-04030: out of process memory when trying to allocate %s bytes (%s,%s)
 *Cause:  Operating system process private memory has been exhausted
 *Action:


Oracle reached an OS limit.
Increase the memory an Oracle process can allocate (stacksize).

Regards
Michel
Re: ORA-04030: out of process memory [message #530021 is a reply to message #530016] Fri, 04 November 2011 02:41 Go to previous messageGo to next message
Its_me_ved
Messages: 979
Registered: October 2009
Location: India
Senior Member
Thanks for your reply.
Increase the memory an Oracle process can allocate (stacksize).


Could you please explain a bit to understand why? I did not get your statement.I mean how you come into the colclusion.It will help. Thank you!

Regards
Ved

[Updated on: Fri, 04 November 2011 02:47]

Report message to a moderator

Re: ORA-04030: out of process memory [message #530023 is a reply to message #530021] Fri, 04 November 2011 02:57 Go to previous messageGo to next message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
Did you read the "cause" of the error?
And did you read my sentence just before the one you quoted?

Regards
Michel

[Updated on: Fri, 04 November 2011 02:58]

Report message to a moderator

Re: ORA-04030: out of process memory [message #530025 is a reply to message #530023] Fri, 04 November 2011 03:07 Go to previous messageGo to next message
Its_me_ved
Messages: 979
Registered: October 2009
Location: India
Senior Member
Thanks for the reply .Yes, I read.
I meant to say I did not find any sql (eg, bulk collect) that blown up the pga. So wanted to know why you said so.
Regards
Ved


Re: ORA-04030: out of process memory [message #530026 is a reply to message #530025] Fri, 04 November 2011 03:16 Go to previous messageGo to next message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
The error makes me say so.
The error says "I wanted to allocated some memory but the OS told me that I have already reached the limit the sysadmin assigned to me and I can't allocate more".
Is this clearer?

Regards
Michel
Re: ORA-04030: out of process memory [message #530027 is a reply to message #530026] Fri, 04 November 2011 03:19 Go to previous messageGo to next message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
Also my experience makes me suggest "stack size" which is confirmed by the errors you posted and mentioned the areas that lack space: "pga heap", "kxs-heap-w".

Regards
Michel
Re: ORA-04030: out of process memory [message #530119 is a reply to message #530027] Fri, 04 November 2011 14:20 Go to previous messageGo to next message
Its_me_ved
Messages: 979
Registered: October 2009
Location: India
Senior Member
Thanks for your reply

Regards
Ved
Re: ORA-04030: out of process memory [message #531049 is a reply to message #530027] Sat, 12 November 2011 05:15 Go to previous messageGo to next message
Its_me_ved
Messages: 979
Registered: October 2009
Location: India
Senior Member
The DBA team does not want to increase the suggesion "Increase the memory an Oracle process can allocate (stacksize)." as multiple DB instances running oand it can impact other DB instances.

The other DBA suggests that the SGA should be decreased and verify if the issue still persists in DEV environment!!

Please kindly advise.

Regards
Ved
Re: ORA-04030: out of process memory [message #531055 is a reply to message #531049] Sat, 12 November 2011 08:53 Go to previous messageGo to next message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
1/ It is their opinion and responsability, I should take the opinion of sysadmin as they are the more skilled to know if stack can be increase or not.

2/ The other DBA is unskilled, you can ignore him/her unless he/she can explain the relation between SGA size and the error.

Regards
Michel
Re: ORA-04030: out of process memory [message #531056 is a reply to message #531055] Sat, 12 November 2011 10:02 Go to previous messageGo to next message
Its_me_ved
Messages: 979
Registered: October 2009
Location: India
Senior Member
Hi Michel,
Thanks once again for the reply. Question is can the change of stack size have negative impact on other DB instances running if stack size is increased?

I have no documentation or any link which I can go through and say hey this is the link you can refer or ask questions.
Quote:

The other DBA is unskilled, you can ignore him/her unless he/she can explain the relation between SGA size and the error.

When asked,the DBA said that we need to test that way only as we have no other option.I raise the same question how its going to help.But there was no answer.


Regards
Ved

[Updated on: Sat, 12 November 2011 10:02]

Report message to a moderator

Re: ORA-04030: out of process memory [message #531057 is a reply to message #531056] Sat, 12 November 2011 10:44 Go to previous message
Michel Cadot
Messages: 68624
Registered: March 2007
Location: Nanterre, France, http://...
Senior Member
Account Moderator
Quote:
Question is can the change of stack size have negative impact on other DB instances running if stack size is increased?

If you allow greater stack (which does not mean that all processes will use it) then you allow space for other processes but this is what swap/virtual memory is made for.
So the question is: is it better to forbid a treatment (which is the meaning of not allowing more size to use) or to slow concurrent processes? In this case, can't this memory consumming process be scheduled at another time?

Quote:
I have no documentation or any link which I can go through and say hey this is the link you can refer or ask questions.

It is an OS issue not an Oracle one, so there is no link in Oracle documentation.

Quote:
When asked,the DBA said that we need to test that way only as we have no other option. I raise the same question how its going to help.But there was no answer.

Which is an answer by itself... Wink
It is useless to test with less SGA if you don't increase stack at the same time.
There is no proof that decreasing the SGA when increasing stack will not have the same result that not decreasing it.
The good test is to increase the stack and keep other parameters and see what happens.

Regards
Michel
Previous Topic: Upgrade from 10g to 11g
Next Topic: Database Blocking Lock
Goto Forum:
  


Current Time: Thu Mar 28 03:50:06 CDT 2024