Processing MODPLSQL Application Crashes Database with ORA-04030 / ORA-04031 Out of Process Memory Errors
(Doc ID 1532032.1)
Last updated on JUNE 21, 2022
Applies to:Portal - Version 188.8.131.52.0 and later
Oracle Database - Enterprise Edition - Version 10.2.0.1 and later
PL/SQL - Version 10.2.0.1 and later
Oracle HTTP Server - Version 184.108.40.206.0 and later
Oracle Database Cloud Schema Service - Version N/A and later
Information in this document applies to any platform.
Oracle Database is crashing periodically with the following errors in the Database alert log:
Database alert log will be located in a place such as <DIR>/alert_SID.log
When first getting ORA-04030 errors, you should review your application code to determine if pl/sql collections or use of pl/sql variables leads to high memory usage. The trace or incident file should have the sql or pl/sql that was running at time of error. This memory growth can be controlled by good programming practices. As an example, use LIMIT clause with BULK COLLECT.
Process sizes can be monitored via sql against database views as listed in <Note 399497.1> FAQ: ORA-4030 [Video]
The problem continues in spite of efforts to tune for load or custom code optimization.
To view full details, sign in with your My Oracle Support account.
Don't have a My Oracle Support account? Click to get started!
In this Document