Oracle Database / SQL Performance & Memory
ORA-04036: investigate the aggregate PGA limit
Oracle can abort work when aggregate private memory exceeds its configured limit. Find the workload and concurrency behind the peak.
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 name, value FROM v$pgastat WHERE name IN ('total PGA allocated','maximum PGA allocated','over allocation count');
Read the result
The values provide instance PGA context, with cumulative or high-water semantics depending on the statistic. They are not a per-query memory profile.
Resolve and verify
Correlate the alert log with process PGA, parallel activity and concurrent sorts. Reduce excessive demand or plan a justified limit change with host headroom.
Operational precautions
The target and limit are different controls. Do not increase the limit beyond safe host capacity.