hi:
I run a script on x$kghlu to collect the shared pool info:
column kghlurcr heading "RECURRENT|CHUNKS" column kghlutrn heading "TRANSIENT|CHUNKS" column kghlufsh heading "FLUSHED|CHUNKS" column kghluops heading "PINS AND|RELEASES" column kghlunfu heading "ORA-4031|ERRORS" column kghlunfs heading "LAST ERROR|SIZE"
select kghlurcr, kghlutrn, kghlufsh, kghluops, kghlunfu, kghlunfs from sys.x$kghlu where inst_id = userenv('Instance') /
SQL> /
RECURRENT TRANSIENT FLUSHED PINS AND ORA-4031 LAST ERROR CHUNKS CHUNKS CHUNKS RELEASES ERRORS SIZE ---------- ---------- ---------- ---------- ---------- ---------- 613 740 1481527 6.0489E+10 920 25784 2625 7264 4326 73028011 0 0 3973 4387 283981 105939833 0 0 3795 5289 91121 9508929013 0 0 2502 4805 136468 93688365 0 0 8673 10944 392 96186804 0 0
6 rows selected.
I have many questions about the results.
1. Here I have six sub pools. Why just the first one consistently get the 4031 errors? Does each sub pool have different shared pool components? I didn't find details info about the sub pools, if you have one, please send me a copy.
2. I did the heapdump at level 2. The dump files is about 60M, so I can't upload it. How can I use the dump file to explain the 4031 errors? I think each line "HEAP DUMP heap name="sga heap(1,0)" is related to one sub pool , but which part is related to the first row in x$kghlu? Is it the "sga heap(1,0)"?
3. The "LAST ERROR SIZE" column shows the size is 25784 , Does this mean it's located in reserved list (>5000)?
Thanks
-- Eagle Fan