ORA-00604: error occurred at recursive SQL level ORA-04024: self-deadlock detected while trying to

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/EVISWANG/article/details/83898736
[oracle@ ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Fri Nov 9 14:30:17 2018

Copyright (c) 1982, 2016, Oracle.  All rights reserved.


Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production


SQL> alter session set container=PDBBURI;

Session altered.

SQL> select table_name from dba_tables;
select table_name from dba_tables

ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 2
ORA-04024: self-deadlock detected while trying to mutex pin cursor 0x401BF05148
12.2.0.1 Active DataGuard AKA ADG ORA-4024 self-deadlock detected while trying to mutex pin cursor (Doc ID 2438982.1) To BottomTo Bottom

APPLIES TO:

Oracle Database - Enterprise Edition - Version 12.2.0.1 and later
Information in this document applies to any platform.

SYMPTOMS

  • On 12.2.0.1 version standby database
  • After performing some grant statements on primary database, and then attempting to access v$database on ADG failed with below error:

    ERROR:
    ORA-00604: error occurred at recursive SQL level 3
    ORA-04024: self-deadlock detected while trying to mutex pin cursor
    0x700010057F9CCD0
    ORA-00604: error occurred at recursive SQL level 4
    ORA-04024: self-deadlock detected while trying to mutex pin cursor
    0x700010057F9CCD0
    ORA-04021: timeout occurred while waiting to lock obje

  • Trace file of ORA-4021 shows problem happened on obj$ row cache:

    kqrGetClusterLock: timeout po: 7000100dbef1778 lock: 7000100ebfca128
    ----------------------------------------
    SO: 0x7000100ebfca070, type: 102, owner: 0x7000100e6619470, flag: INIT/-/-/-/0x00 if: 0x1 c: 0x1
    proc=0x70001015cb66640, name=row cache enqueues, file=kqr.h LINE:2319 ID:, pg=0, conuid=0
    row cache enqueue: count=1 session=700010158ece048 object=7000100dbef1778, request=S
    savepoint=0x28
    type=MULTI-INSTANCE instance locked=T handle=700010157255a20
    row cache parent object: addr=7000100dbef1778 cid=8(dc_objects) conid=0 conuid=0
    hash=73fd9e3d typ=61 transaction=0 flags=00008000 inc=1, pdbinc=1
    objectno=0 ownerid=0 nsp=1
    name=OBJ$
    own=7000100dbef1848[7000100ebfca8f0,7000100ebfca8f0] wat=7000100dbef1858[7000100ebfca130,7000100ebfca130] mode=S req=S
    status=-/-/-/-/-/-/-/-/LOADING
    instance lock=QI 73fd9e3d 2ede6cb3
    set=0, complete=FALSE
    data=

  • Errorstack trace shows the problem happened with below callstack:

    kdstdst <- ksedst1 <- ksedst <- dbkedDefDump <- ksedmp
    <- dbkdaKsdActDriver <- dbgdaExecuteAction <- dbgdaRunAction <- IPRA <- IPRA
    <- entActions <- dbgdChkEventKgErr <- dbkdChkEventRdbmsEr <- ksfpec <- dbgePostErrorKGE
    <- 236 <- dbkePostKGE_kgsf <- IPRA <- kgesev <- kgesec1
    <- kxsGetRuntimeLock <- kkscsCheckCursor <- 456 <- kkscsSearchChildLis <- kksfbc
    <- kkspsc0 <- kksParseCursor <- opiosq0 <- opiall0 <- opikpr
    <- opiodr <- rpidrus <- skgmstack <- rpidru <- rpiswu2
    <- kprball <- kprbprsu <- kprbprs <- kqdGetBundledCursor <- kqdoir_new 

CAUSE

This issue is due to

Bug 27716177 - ADG: ORA-04021:ORA-04024:ROW CACHE ENQUEUE AGAINST DC_OBJECTS:OBJ$ <==closed as following duplicate unpublished bug
BUG 28423598 - GOLDENGATE AUTH CAUSES ACTIVE DG TO BE UNUSABLE UNTIL BOUNCE


 

SOLUTION

Apply Patch 28423598

 Patch 28423598下载这个补丁打上就可以

猜你喜欢

转载自blog.csdn.net/EVISWANG/article/details/83898736
今日推荐