Oracle Database / SQL Performance & Memory
ORA-04030: investigate server-process memory exhaustion
A process can fail allocation because of OS limits, address-space constraints or excessive private memory use. Distinguish it from SGA allocation errors.
Environment and inputs: Oracle Database 19c baseline · SQL*Plus-compatible SQL unless RMAN, DGMGRL, ADRCI or a host shell is specified. Check release, patch level, edition and container first.
Start with this diagnostic
Use the stated SQL, RMAN, DGMGRL or host shell and replace sample names with approved targets. DBA and V$ views need authorized catalog access in the correct container. Do not grant broad privileges for an example.
SELECT pid, spid, pga_used_mem, pga_alloc_mem, pga_max_mem FROM v$process ORDER BY pga_alloc_mem DESC FETCH FIRST 20 ROWS ONLY;
Read the result
These values describe process PGA accounting visible now. The failed process may already be gone, and OS accounting may include additional memory.
Resolve and verify
Match the error's process with trace and host limits, then inspect the responsible SQL or application workload. Resolve memory growth or capacity through a controlled plan.
Operational precautions
Do not assume that raising PGA_AGGREGATE_TARGET alone removes per-process or operating-system constraints.