[分享]HP-UX 11.23和11.31安腾系统上的进程挂起、等待事件‘cursor: pin S wait on X’(和其他等待事件)_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 5261 | 回复: 0   主题: [分享]HP-UX 11.23和11.31安腾系统上的进程挂起、等待事件‘cursor: pin S wait on X’(和其他等待事件)        下一篇 
unknsnow
注册用户
等级:上士
经验:272
发帖:78
精华:0
注册:2012-2-10
状态:离线
发送短消息息给unknsnow 加好友    发送短消息息给unknsnow 发消息
发表于: IP:您无权察看 2012-2-10 9:35:33 | [全部帖] [楼主帖] 楼主


适用于:

Oracle服务器 – 企业版 - Version: 9.2.0.1 to 11.1.0.6 - Release: 9.2 to 11.1
HP-UX Itanium服务器
Oracle Server 企业版- Version: 9.2.0.1 to 11.1.0.6

症状:

在下列各项之一中,进程挂起、不确定的等待:

北京联动北方科技有限公司 cursor: pin S wait on X (10g wait) 

北京联动北方科技有限公司 kksfbc child completion 

SGA: 分配强制组件的增长。

没有理由的没有块相关操作进程。

pw_wait() HP-UX系统的调用相关问题这个事实中,各种各样的等待事件得到了解释。

因此,上面列表不是无遗漏的,下面使用pstack输出所有情况下匹配的问题。

这个一个普遍的问题,就像平行执行子进程会影响一些oracle进程。

一个生成systemstateprocessstate、或者errorsstack dump文件的命令:

ALTER SESSION or oradebug command frees the hanging process.


一个被影响的进程调用堆栈的top,获得使用的pstack

0: c0000000003e2ff0 : pw_wait() + 0x30 (/usr/lib/hpux64/libc.so.1)
1: 4000000002e98a20 : pw_wait() + 0x80
(/oracle/DwhProd/orabin/oradb/product/10.2.0/bin/oracle)
2: 4000000002e492f0 : sskgpwwait() + 0x170 (/oracle/DwhProd/orabin/oradb/pr
oduct/10.2.0/bin/oracle)
3: 4000000002e3af80 : skgpwwait() + 0xa0 (/oracle/DwhP
rod/orabin/oradb/product/10.2.0/bin/oracle)
4: 4000000002d6ffd0 : ksliwat() + 0x670
(/oracle/DwhProd/orabin/oradb/product/10.2.0/bin/oracle)
5: 4000000002d4a1b0 : kslwaitns_timed() + 0x70
(/oracle/DwhProd/orabin/oradb/product/10.2.0/bin/oracle)
6: 4000000002d4b9b0 : kskthbwt() + 0x190 (/oracle/DwhProd/orabin/oradb/p
roduct/10.2.0/bin/oracle)
7: 4000000002e35220 : kslwait() + 0xe0 (/oracle/DwhPr
od/orabin/oradb/product/10.2.0/bin/oracle)
...


这些下面,依赖于特定的等待事件,一些调用堆栈的调用将有所不同。

Tusc系统的调用跟踪者工具的输出类似如下所示:

( Attached to process 6144 ("ora_j032_SATAVA02") [64-bit] )
15:30:27 [6144]{631499} #1 pw_wait(0x9ffffffffffe1700) ... [sleeping]
User time: 0.00
Interrupt time: 0.00
Elapsed time: 66.3


更改:

HP 11.31以下的补丁包可能需要最近适用的

Mar 2008: FEATURE11i,B.11.31.0803.318b


注意:这些引起我们注意的问题也可能发生在HP-UX11.23系统上。

原因:

pw_wait() O/S系统调用中,这个问题是一个过失。

HP-UX11.31上,这个问题是由HP-UX调度进程补丁PHKL_37456的问题引起的。

PHKL_37456:调度进程累积的补丁

另外的信息或许可以在HP 改变请求QXCR1000811756中寻找。

请注意等待事件,如上所示‘cursor: pin S wait on X' and 'kksfbc child completion’,这能出现在一些其他合法的原因之上。所以,只存在这些等待不能说明这个问题描述的,在那些条项中就已经遇到过。当调查这个问题的事实时,你需要验证其他的详细的症状在这里描述的。

这个问题也会在HP-UX11.23中发生。我们没有在这个时候对特定的PHKL补丁级别的信息影响到它,只是开始修补PHKL_37809

解决:

有一些选项可用于解决这个问题:

解决方法:oraclebug setospid+unlimit释放挂起的进程。

1. 检查unix中挂起进程的id

2. 在之上用oraclebug,如下:(unlimit命令足够停止挂起)

SQL> oradebug setospid <unix process id>
SQL> oradebug unlimit


3. 作为选择,如果有一些挂起的进程在‘cursor: pin S wait on X’上,或者时间非常短,systemstate跟踪dump(最小级别1将最小化跟踪数量写入dump文件)将以最快的途径找到挂起的进程并且唤醒他们。

SQL> oradebug setmypid
SQL> oradebug unlimit
SQL> oradebug dump systemstate 1


解决方法:在11.31上安装PHKL_38397或以后等效。

解决方法:在11.23上安装PHKL_37809或以后等效。

注意:这些名字以PHKL_开头的包是HP-UX的补丁包。由于这些包经常修改和升级,所以请验证HP-UX支持的最近的可适用的补丁数字。




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论