Oracle 10.2.0.1 数据库hang住 Bug 4612267

时间:2021-07-04 21:44:57

 

 

一.  Bug问题表现

       CPU使用率100%,vmstat 显示有大量等待运行的进程,有大量的上下文切换。 sqlplus 和 lsnrctl 命令无效。 数据基本是hang住了。 啥都不能用。

 

       该bug 存在与Oracle 10.2.0.1.

 

1.1 Top 显示

top - 04:46:06 up198 days, 22:05,  5 users,  load average: 16.20, 16.63, 21.22

tasks: 112 total,  19 running, 93 sleeping,   0 stopped,   0 zombie

cpu(s): 26.3%us, 73.0%sy, 0.0%ni,  0.6%id, 0.0%wa,  0.0%hi,  0.1%si, 0.0%st

mem:  4026344k total,  3255488kused,   770856k free,   279252k buffers

swap: 4192924k total,   369088kused,  3823836k free,  2835992k cached

 

       结合网上google的结果,该bug 对cpu 表现是。用户使用30%左右,系统使用70%。

       系统启动198天,会触发这个bug。 解决这个问题一是升级数据库,二是定期重启操作系统。

 

Linux Top 命令详解

http://www.cndba.cn/Dave/article/650

 

1.2 vmstat 命令

[root@localhost ~]# vmstat 2

procs -----------memory---------- ---swap-------io---- --system-- -----cpu------

 r  b  swpd   free   buff cache   si   so   bi    bo   in  cs us sy id wa st

36  0 369092 503308 2481042815564    1    1   31     5    0   0  1  1 97 1  0

36  0 369092 503308 2481042815600    0    0    0    10 1047  237 26 74 0  0  0

38  0 369092 503308 2481042815600    0    0    0     0 1045 232 25 75  0 0  0

...

--这里r 表示等待运行的进行,一般小于cpu的个数。 这里超过36. 超过CPU 很多倍,而且in 值过高。 in 表示context switch。

 

Unix vmstat 命令

http://www.cndba.cn/Dave/article/685

 

1.3 sqlplus 和 lsnrctl 命令不可用

       使用这2个命令时,没有反应,挂住。包括sqlplus -prelim /nolog.

 

 

二.  Bug 4612267 说明

 

MOS 上的2篇相关文章:

Bug 4612267 - OCI client spins when machineuptime >= 249 days [ID 4612267.8]

SQL*Plus 10.2.0.1 Hangs, When System UptimeIs Long Period of Time [ID 338461.1]

 

说明如下:

Affects:

               
 

Product (Component)

 
 

Oracle Server

 
 

Range of versions believed to be affected

 
 

Versions < 11

 
 

Versions confirmed as being affected

 
 

10.1.0.5

 

10.2.0.1

 
 

Platforms affected

 
 

Generic (all / most platforms affected)

 

 

Fixed:

   
 

This issue is fixed in

 
 

10.2.0.2

 

11.1.0.6  (Base Release)

 

 

 

Description

       OCIclients may spin once the machine has been up for longer than 249 days (24.9days on some machines). The spin will show repeated calls to times() fromsltrgatime64().

 

--根据官网的说法,是OS 系统超过249天,就会触发这个bug。 有时候是24.9 * N 天。 从我google的结果看,基本都是在198和199这两天触发这个bug。

 

 

 

 

 

 

-------------------------------------------------------------------------------------------------------

QQ:492913789

Email:ahdba@qq.com

Blog: http://www.cndba.cn/dave


DBA1 群:62697716(满);   DBA2 群:62697977(满)  DBA3 群:62697850(满)  

DBA 超级群:63306533(满);  DBA4 群: 83829929  DBA5群: 142216823   

DBA6 群:158654907  聊天 群:40132017   聊天2群:69087192

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请