WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK

现象:

1.数据库ALERT持续报如下错误,一段时间后数据库实例Hang住无法使用
Wed Oct 26 09:10:52 2011
>>> WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK! pid=604
System State dumped to trace file /oracle/product/10.2.0/admin/jxsoh/udump/jxsoh1_ora_1486930.trc

2.检查TRC文件
/oracle/product/10.2.0/admin/jxsoh/udump/jxsoh1_ora_1486930.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options
ORACLE_HOME = /oracle/product/10.2.0/db_1
System name:AIX
Node name:sohrac1
Release:3
Version:5
Machine:00C71E704C00
Instance name: jxsoh1
Redo thread mounted by this instance: 1
Oracle process number: 604
Unix process pid: 1486930, image: oracle@sohrac1

*** 2011-10-26 09:10:52.514
*** SERVICE NAME:(SYS$USERS) 2011-10-26 09:10:52.512
*** SESSION ID:(489.4) 2011-10-26 09:10:52.512
>>> WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK! <<<
row cache enqueue: session: 70000018f4892c0, mode: N, request: S
===================================================
SYSTEM STATE
------------
System global information:
processes: base 700000189374220, size 1000, cleanup 700000189395d30
allocation: free sessions 70000018a428e08, free calls 0
control alloc errors: 0 (process), 0 (session), 0 (call)
PMON latch cleanup depth: 0
seconds since PMON's last scan for dead processes: 26
……

分析:
此为Sharepool抖动

解决办法:
alter system set share_pool_size=XXg scope=both;

你可能感兴趣的:(cache)