WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK! pid=200

来源:互联网 发布:nginx配置二级目录 编辑:程序博客网 时间:2024/05/16 11:49

OS:HP-UX

 

DB:oracle 10.2.0.4

 

alert   log:

 

Sun Jan 18 00:10:38 2009
Thread 1 advanced to log sequence 16459 (LGWR switch)
  Current log# 1 seq# 16459 mem# 0: /oradata7/JL_RED/redo01.log
Sun Jan 18 00:11:07 2009
>>> WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK! pid=200
System State dumped to trace file /oracle/app/oracle/admin/TGJZLJL/udump/tgjzljl_ora_19339.trc
Sun Jan 18 00:12:35 2009
ALTER SYSTEM ARCHIVE LOG
Sun Jan 18 00:12:35 2009
Thread 1 advanced to log sequence 16460 (LGWR switch)
  Current log# 2 seq# 16460 mem# 0: /oradata7/JL_RED/redo02.log
Sun Jan 18 00:12:36 2009
ALTER SYSTEM ARCHIVE LOG
Sun Jan 18 00:12:36 2009
Thread 1 cannot allocate new log, sequence 16461
Checkpoint not complete
  Current log# 2 seq# 16460 mem# 0: /oradata7/JL_RED/redo02.log
Sun Jan 18 00:12:36 2009
Thread 1 advanced to log sequence 16461 (LGWR switch)
  Current log# 3 seq# 16461 mem# 0: /oradata7/JL_RED/redo03.log
Sun Jan 18 00:12:54 2009
ALTER DATABASE BACKUP CONTROLFILE TO '/var/opt/omni/tmp/ctrl_TGJZLJL.dbf' REUSE
Sun Jan 18 00:12:54 2009
Completed: ALTER DATABASE BACKUP CONTROLFILE TO '/var/opt/omni/tmp/ctrl_TGJZLJL.dbf' REUSE

 

 

tgjzljl_ora_19339.trc:

 

 

Ioctl ASYNC_CONFIG error, errno = 1
/oracle/app/oracle/admin/TGJZLJL/udump/tgjzljl_ora_19339.trc
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
.....

.....

Ioctl ASYNC_CONFIG error, errno = 1
*** 2009-01-18 00:11:07.029
*** ACTION NAME:() 2009-01-18 00:11:07.029
*** MODULE NAME:(PlSqlDev.exe) 2009-01-18 00:11:07.029
*** SERVICE NAME:(TGJZLJL) 2009-01-18 00:11:07.029
*** SESSION ID:(1005.61843) 2009-01-18 00:11:07.029
>>> WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK! <<<
row cache enqueue: session: c0000003fc9ded58, mode: N, request: X
===================================================

 

 


Metalink:Note:302801.1

 

 

http://blog.itpub.net/post/3701/16129

 

http://nmgzw.itpub.net/post/276/222137

 

http://kingprise.itpub.net/post/7480/51010

 

http://www.itpub.net/viewthread.php?tid=300895&extra=&page=1

 

http://zhulch.itpub.net/post/17395/411467

 

Applies to:
Oracle Server - Enterprise Edition - Version: 9.2.0.1 to 11.1.0.x
HP-UX Itanium
HP-UX PA-RISC (64-bit)

Goal
 How to disable async_io on Oracle in HP-UX to avoid this message in trace file:
Ioctl ASYNC_CONFIG error, errno = 1


Solution
Oracle (for HP only) always uses async I/O regardless of the value of init settings
(disk_asynch_io=FALSE and filesystemio_options=none).
The  parameter filesystemio_options=none doesn't work.

Oracle always opens /dev/async successfully only if the /dev/async HP-UX
device driver is properly configured for read and write. This is irrespective
of whether the DISK_ASYNC_IO parm is set to TRUE.

In 9.2 version, to  inactivate ASYNCH_IO with Oracle , workaround is:
   chown bin:bin /dev/async
   chmod 660 /dev/async
Note:
This may impact other applications that wish to use asynch I/O

Grant dba group the MLOCK priv to avoid the Ioctl ASYNC_CONFIG trace file errors:

(1) # /usr/sbin/setprivgrp dba  MLOCK
(2) # vi /etc/privgroup
This should contain dba MLOCK RTSCHED RTPRIO
(3) # cat /etc/privgroup
dba MLOCK RTSCHED RTPRIO


Since the Oracle 10.2 version, these settings stop the tracing:
disk_asynch_io=FALSE
filesystemio_options=none

 

 

 

原创粉丝点击