Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> gather_stats_job died due to AUTO SGA error

gather_stats_job died due to AUTO SGA error

From: Don Seiler <don_at_seiler.us>
Date: Wed, 11 Apr 2007 03:16:18 -0500
Message-ID: <716f7a630704110116j2fe547dfr33735a83ebd59ce3@mail.gmail.com>


Guess the fun never ends. I'm (still) on Oracle 10.2.0.2 on RHEL3, 32-bit. I have sga_max_size and sga_target set to 1456M. Nothing SGA related has been adjusted in a few months. One memory-related note is that I did bump pga_aggregate_target from 24M to 512M this past Sunday. The advice table indicates that 1024M would still be a better value. `free` indicates that I have plenty (over 29G) of memory available on the linux box.

My system freaked out around 2:30 AM. Things appear to be fine now that the stats gathering job is dead. Alert log first reports this:

AUTO SGA: Disabling background sga tuning due to err 604 AUTO SGA: Dumping call and error stack to file /u00/app/oracle/admin/xcede/bdump/xcede_mmon_3409.trc

Google gives me nothing on that quoted first line. It went downhill from there. I'll post the rest of the alert log errors at the end. There's a lot of mention of not being able to find the DBMS_UTILITY package, but I can call dbms_utility.compile_schema() just fine at the moment.

Google does tell me that these parameters might be factors in an ORA-04031, so I'm presenting my values:

shared_pool_reserved_size            big integer 31876710
shared_pool_size                     big integer 0

large_pool_size and java_pool_size are also 0, which was done when I switched to ASMM and set sga_target. The first trace file mentioned in the errors below lists this query as being involved:

SELECT java_pool_size_for_estimate s,
  java_pool_size_factor *100 f,
  estd_lc_load_time l,
  0
FROM v$java_pool_advice;

I can run this query fine just now, perhaps the query itself isn't the problem. Obviously I'd rather not have the gather_stats_job die every night and page me at 2:30 AM. I can't raise the SGA too much more on this 32-bit box, and we've been on these ASMM settings for a couple of months now without problem. Any ideas?

Also, is the sga auto tuning still disabled? Where can one check?

Here is the rest of the errors from the alert log:

Wed Apr 11 02:28:42 2007
Errors in file /u00/app/oracle/admin/xcede/bdump/xcede_mmon_3409.trc: ORA-00604: error occurred at recursive SQL level 1 ORA-04031: unable to allocate 16 bytes of shared memory ("shared pool","select j

                     ava_pool_size_for_es...","sql area","tmp")
Wed Apr 11 02:28:58 2007
Errors in file /u00/app/oracle/admin/xcede/bdump/xcede_cjq0_3407.trc: ORA-00604: error occurred at recursive SQL level 1 ORA-04031: unable to allocate 16 bytes of shared memory ("shared pool","select c
                     ount(*) from sys.job...","sql area","tmp")
Wed Apr 11 02:29:45 2007
Errors in file /u00/app/oracle/admin/xcede/bdump/xcede_j001_26571.trc: ORA-12012: error on auto execute of job 182486 ORA-04031: unable to allocate ORA-04031: unable to allocate 16 bytes of shared m
                 emory ("shared pool","select
obj#,type#,ctime,mtim...","sql area","tmp")
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_UTILITY"
ORA-06512: at "SYS.DBMS_STATS_INTERNAL", line 124
ORA-06512: at "SYS.DBMS_STATS", line 1461
ORA-06512: at "SYS.DBMS_STATS", line 19059
ORA-00604: error occurred at recursive SQL level 2
ORA-04031: unable to allocate 16 bytes of shared memory ("shared
pool","select o
                     bj#,type#,ctime,mtim...","sql area","tmp")
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_UTILITY"
ORA-00604: error occurred at recursive SQL level 2 ORA-04031: unable to allocate 16 bytes of shared memory ("shared pool","select o
                     bj#,type#,ctime,mtim...","sql area","tmp")
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_UTILITY"
ORA-06512: at "SYS.DBMS_STATS_INTERNAL", line 124 ORA-06512: at "SYS.DBMS_STATS_INTERNAL", line 141 Wed Apr 11 02:29:45 2007
Errors in file /u00/app/oracle/admin/xcede/bdump/xcede_j001_26571.trc: ORA-00604: error occurred at recursive SQL level 2 ORA-04031: unable to allocate 16 bytes of shared memory ("shared pool","select o
                     bj#,type#,ctime,mtim...","sql area","tmp")
ORA-12012: error on auto execute of job 182486 ORA-04031: unable to allocate ORA-04031: unable to allocate 16 bytes of shared m
                 emory ("shared pool","select
obj#,type#,ctime,mtim...","sql area","tmp")
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_UTILITY"
ORA-06512: at "SYS.DBMS_STATS_INTERNAL", line 124
ORA-06512: at "SYS.DBMS_STATS", line 1461
ORA-06512: at "SYS.DBMS_STATS", line 19059
ORA-00604: error occurred at recursive SQL level 2
ORA-04031: unable to allocate 16 bytes of shared memory ("shared
pool","select o
                     bj#,type#,ctime,mtim...","sql area","tmp")
ORA-06508: PL/SQL: could not find program unit being called: "SYS.DBMS_UTILITY"
ORA-00604: error occurred at recursive SQL level 2 ORA-04031: unable to allocate 16 bytes of shared memory ("shared pool","select o
                     bj#,type#,ctime,mtim...","sql area","tmp")
ORA-0
Wed Apr 11 02:30:38 2007
Errors in file /u00/app/oracle/admin/xcede/bdump/xcede_cjq0_3407.trc: ORA-00604: error occurred at recursive SQL level 1 ORA-04031: unable to allocate 16 bytes of shared memory ("shared pool","select c
                     ount(*) from sys.job...","sql area","tmp")


-- 
Don Seiler
http://seilerwerks.blogspot.com
--
http://www.freelists.org/webpage/oracle-l
Received on Wed Apr 11 2007 - 03:16:18 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US