ORA-04031: unable to allocate 32 bytes of shared memory
SummaryWhen AgentBulkProcessing is running a database query, the execution results is 100% memory consumption on the database.
Error MessagesORA-04031: unable to allocate 32 bytes of shared memory ("shared pool","select name,password,datats#...","SQLA","tmp")
Steps to ReproduceRun applications in production
A defect or configuration issue in the operating environment.
Oracle docs note this about ORA-04031:
ORA-04031: unable to allocate string bytes of shared memory
Cause: More shared memory is needed than was allocated in the shared pool.
Action: If the shared pool is out of memory, either use the dbms_shared_pool package to pin large packages, reduce your use of shared memory, or increase the amount of available shared memory by increasing the value of the INIT.ORA parameters
"shared_pool_reserved_size" and "shared_pool_size".
If the large pool is out of memory, increase the INIT.ORA parameter "large_pool_size".
ResolutionMake the following change to the operating environment:
The database pool needs to be resized to eliminate this issue. See Oracle documentation regarding shared pool sizing.
Published October 14, 2016 - Updated October 18, 2016