重庆思庄Oracle、KingBase、PostgreSQL、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 128|回复: 0
打印 上一主题 下一主题

[Oracle] Active DataGuard 报 ORA-4024 self-deadlock detected

[复制链接]
跳转到指定楼层
楼主
发表于 5 天前 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
现象:
当在primary DB执行一些grant 语句,然后试图在ADG 数据库中访问v$database将会遇到如下报错
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

报ORA-4021的trace文件中会出现 obj$ row cache lock问题:
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 看起来如下:
kdstdst <- ksedst1 <- ksedst <- dbkedDefDump <- ksedmp
<- dbkdaKsdActDriver <- dbgdaExecuteAction <- dbgdaRunAction <- IPRA <- IPRA
<- entActions <- dbgdChkEventKgErr <- dbkdChkEventRdbmsEr <- ksfpec <- dbgePostErrorKGE
<- 236 <- dbkePostKGE_kgsf <- IPRA <- kgesev <- kgesec1
<- kxsGetRuntimeLock <- kkscsCheckCursor <- 456 <- kkscsSearchChildList <- kksfbc
<- kkspsc0 <- kksParseCursor <- opiosq0 <- opiall0 <- opikpr
<- opiodr <- rpidrus <- skgmstack <- rpidru <- rpiswu2
<- kprball <- kprbprsu <- kprbprs <- kqdGetBundledCursor <- kqdoir_new




原因:
这个问题是由于:

<Bug 27716177> - ADG: ORA-04021:ORA-04024:ROW CACHE ENQUEUE AGAINST DC_OBJECTS:OBJ$ <==被关闭为如下 internal bug 的重复bug
BUG 28423598 - GOLDENGATE AUTH CAUSES ACTIVE DG TO BE UNUSABLE UNTIL BOUNCE


解决方案:
应用补丁<Patch 28423598>

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2026-7-31 09:58 , Processed in 0.247892 second(s), 20 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表