ORA-04030 Out Of Process Memory

I recently stumbled upon the following bug on a database that has been running for 7 months.  Its always interesting when hitting bugs after several months of running the same process.  It can be a challenge to explain why now and not before, but that’s the nature of bugs.

The exact error message:

ORA-04030: out of process memory when trying to allocate 16328 bytes (koh-kghu call ,pmucalm coll)

The resolution was simple and found in the following MOS Note 1325100.1

The context of the note is that when more than 4G of PGA is trying to be consumed by a process and the PGA is set higher than 4G.  In my particular case 5G.  The problem is the PGA, but running out of map entries on the OS.  There is a default limit of 65536 per process.  Increasing this limit in /proc/sys/vm/max_map_count should resolve the issue.

The other workaround deals with changing hidden parameters which requires a bounce of the database.  Of course, the hidden parameters shouldn’t be changed without the direction of Oracle Support, even though they provide the change in the note DBAs should always review their symptoms with Oracle Support to ensure that changing them is the correct course of action.

Advertisements

Tagged:

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: