DFS lock handle等待事件

The session waits for the lock handle of a global lock request on the distributed file system (DFS). It is most common in a parallel server situation.

 

Solutions

During a period of wait, use the following SQL statement to retrieve the name of the lock and the mode of the lock request:

select chr(bitand(p1,-16777216)/16777215) || chr(bitand(p1, 16711680)/65535) “Lock”,
to_char(bitand(p1, 65536)) “Mode”,
p2, p3 , seconds_in_wait
from v$session_wait
where event = ‘DFS lock handle’

 

Then use the following to identify the requesting session and the blocking session:

select inst_id, sid, type, id1, id2, lmode, request, block
from gv$lock
where type=’CI’ and id1=9 and id2=5

 

In this example, use the values from the first query in the where clause. type=Lock, id1=p1 and id2=p2.

 

Waits of this type generally indicate competition between distributed nodes for data.

关注dbDao.com的新浪微博

扫码关注dbDao.com 微信公众号:

Comments

  1. In this example, use the values from the first query in the where clause. type=Lock, id1=p1 and id2=p2.这里应该是id1=p2,id2=p3.参考文档:http://docs.oracle.com/cd/B19306_01/server.102/b14237/waitevents002.htm#i970885id1The first identifier (id1) of the enqueue or global lock takes its value from P2 or P2RAW. The meaning of the identifier depends on the name (P1).id2The second identifier (id2) of the enqueue or global lock takes its value from P3 or P3RAW. The meaning of the identifier depends on the name (P1).

Speak Your Mind

TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569