Function reloading in SGA
- From: Jay Hostetter <hostetter.jay@xxxxxxxxx>
- To: oracle-l@xxxxxxxxxxxxx
- Date: Tue, 25 May 2010 12:06:35 -0400
I have a 9.2.0.4 database running on Windows that frequently runs into
ORA-4031 errors (about once a month). The application has a known problem
with literal values in the SQL. I have been monitoring objects in the SGA
to see if anything else is causing fragmentation.
I noticed that one function is loaded repeatedly, even though it is pinned.
It has been reloaded several times today (LOADS column value keeps
increasing in v$db_object_cache). Now I know this happens when the object
is invalidated, however as far as I can tell it is not becoming
invalidated. None of it's depended objects are becoming invalidated
either. Or perhaps I should say - how do I know they are not becoming
invalidated? There is no DDL occuring on the function or its dependent
objects. The dependent objects are shown below. What else could be causing
this function to be reloaded?
Thank you,
Jay
SQL> run
1 select * from dba_dependencies
2* where name = 'GET_NEXT_SEQUENCE'
OWNER NAME TYPE REFERENCED_O
REFERENCED_NAME REFERENCED_TYPE REFERENCED DEPE
---------- ------------------ ----------------- ------------
-------------------- ----------------- ---------- ----
MIS GET_NEXT_SEQUENCE FUNCTION SYS
DUAL TABLE HARD
MIS GET_NEXT_SEQUENCE FUNCTION PUBLIC
DUAL SYNONYM HARD
MIS GET_NEXT_SEQUENCE FUNCTION SYS
STANDARD PACKAGE HARD
MIS GET_NEXT_SEQUENCE FUNCTION MIS
INTERFACE_LOG TABLE HARD
MIS GET_NEXT_SEQUENCE FUNCTION MIS
NEXT_SEQUENCE_NUMBER TABLE HARD
MIS GET_NEXT_SEQUENCE FUNCTION MIS
DUAL NON-EXISTENT HARD
Other related posts: