LGWR (ospid: 40339): terminating the instance due to error 4021

3,741 total views, 2 views today

www.dbhelp.net 十字螺丝钉的DBA日记
公司备库ADG意外宕机,alert日志显示LGWR进程终止了DB instance

错误原因:

1、发生ORA-4021 错误的原因?
获取library cache lock/pin 超时
2、为什么是 LGWR 终止了db instance?
根据 《Bug 18242740 : ACTIVE STANDBY DATABASE CRASHED WITH ORA-4021》整理:
LGWR 需要获取到解析锁(parse lock)才能刷新,可能这个会话话费了大量时间解析。超过了设定时间,依然没有获取到解析锁,就发生了ORA-4021崩溃。

解决办法:

MOS上找到了相同案例的解决方案《LGWR (ospid: Xxx): Terminating The Instance Due To Error 4021 (文档 ID 2177473.1)》,BUG导致ADG宕机。设置隐含参数 _adg_parselock_timeout 可解决该bug,

 

参考资料

LGWR (ospid: Xxx): Terminating The Instance Due To Error 4021 (文档 ID 2177473.1)
CAUSE
Bug 18242740 ACTIVE STANDBY DATABASE CRASHED WITH ORA-4021 closed as duplicate of Bug 17018214 – ORA-600 [KRDRSB_END_QSCN_2]
SOLUTION
Fix is already included in 11.2.0.4 but the fix is DISABLED by default.
To enable the fix  set “_adg_parselock_timeout” to the number of centi-seconds LGWR should wait before backing off and retrying the request.
Set  the parameter “_adg_parselock_timeout”
On the Active Data Guard Standby set below parameter and restart standby:
ALTER SYSTEM set “_adg_parselock_timeout”=550 scope=both;
www.dbhelp.net 十字螺丝钉的DBA日记

发表评论

必填项已用*标注