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.
本文转自maclean_007 51CTO博客,原文链接:http://blog.51cto.com/maclean/1277869