Oracle logs ORA-04030 memory allocation errors and fails to run reliably
Failures have been seen during the Oracle Migration phase which is part of the Rev A upgrade procedure as well as Oracle instance creation on systems that have been successfully migrated. In both cases, the following errors are seen in the alert_adva.log file located in C:\oracle\diag\rdbms\adva\adva\trace\
Resuming block recovery (PMON) for file 1 block 27455
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Errors in file C:\ORACLE\diag\rdbms\adva\adva\trace\adva_pmon_5120.trc:
ORA-04030: out of process memory when trying to allocate 8389132 bytes (pga heap,redo overflow buffer)
The amount of RAM an Oracle instance uses is determined by the settings or the Oracle parameters memory_target and memory_max_target. Both of these parameters can be modified using SQL (see IM Configuration Guide > Section 13 Database Maintenance -> History Resource Configuration -> Expanding DB Block Buffer Space for instructions). Set the value to the recommended maximum of 1.8 GB (or 1,843 MB) and restart the IM if it is larger then the recommendation. The memory allocation errors will now stop and the instance will run reliably.
Note: if the instance is recreated again, the values of memory_target and memory_max_target will be reset by the Oracle Instance Wizard and may need to be updated again. To verify the new values for these parameters, you can either view them in Oracle as described in the procedure referenced above. Or you can view them in the Alert_Adva.log file. Every time an instance is started, the current values get written to this file. Here is what they will look like on a failing IM:
System parameters with non-default values:
processes = 150
memory_target = 2560M
memory_max_target = 2560M
Note 2: customers at SV5.1 without Rev A should also review the size of their IM's Oracle instance. While no failures have been reported at this version, maybe because of changes Oracle made in 11R2, it would still be wise to adjust the instance’s RAM settings to stay below the recommended maximum. This is especially important before upgrading to Rev A (and Oracle 11r2)!