碰见一个BLOCKING_SESSION显示不正确的BUG

REDHAT LINUX AS4U4上运行的3个节点的ORACLE 10.2.0.2系统,因为前台应用的原因,会导致某些事务一直不提交也不回滚,所以这个事务影响的记录就会出于加锁状态,从而导致后来的事务需要操作相同记录的就会出现一个锁等待事件,为了确定是哪个SESSION BLOCK其他事务,于是根据锁等待时间最长的SESSION的SID去V$SESSION视图中查找BLOCKING_SESSION的值,得到是谁BLOCK了这个SESSION,以便找到问题的根源,然后奇怪的问题发生了,找到的这个BLOCKING_SESSION的值去V$LOCK中查找,却发现这个session根本没有LOCK任何资源,而且,把这个SESSION杀掉之后,原先被BLOCK的SESSION还是处于BLOCK的状态,看来是杀错SESSION了。

感觉不可思议,ORACLE BUG碰见的多,碰见这种鬼问题首先想到的就是METALINK了,查了下,果然是个BUG,看看上面是怎么说的吧。

[@more@]

Bug 5481650 GV$SESSION.blocking_session has incorrect value
This note gives a brief overview of bug 5481650.

Affects:
Product (Component) Oracle Server (Rdbms)
Range of versions believed to be affected Versions < 11
Versions confirmed as being affected 10.2.0.3

Platforms affected Generic (all / most platforms affected)

Fixed:
This issue is fixed in 10.2.0.4 (Server Patch Set)

Symptoms: Related To:
Wrong Results
(None Specified)
GV$SESSION
V$SESSION

Description
If "Blocker" and "Waiter" are on the same instance then "blocking_session"
in "GV$SESSION" is shown exactly 1 greater than the actual SID.


跟我碰见的一摸一样,每次都是实际显示的BLOCKING_SESSION比真正的BLOCKING_SESSION都大一个。
这个问题可以通过打PATCH来解决,因为没有太多影响,暂时也不想动它。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25016/viewspace-1004888/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25016/viewspace-1004888/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值