|
最初由 samchj 发布
[B]我猜,oracle在进行delete的时候发现在buffer中有一个块存在,那它必须为它做一个cr而不能直接修改这个块 [/B]
session 1:
SQL> select file#,block#,class#,xnc,status,objd,ts# from v$bh where file#=9 and
block# in (907,908);
no rows selected
SQL> select count(*) from tdump;
COUNT(*)
----------
9
SQL> select file#,block#,class#,xnc,status,objd,ts# from v$bh where file#=9 and
block# in (907,908);
FILE# BLOCK# CLASS# XNC STATU OBJD TS#
---------- ---------- ---------- ---------- ----- ---------- ----------
9 907 4 0 xcur 30437 9
9 908 1 0 xcur 30437 9
At this time,Session2 delete one record
then session 1 :
SQL> select file#,block#,class#,xnc,status,objd,ts# from v$bh where file#=9 and
block# in (907,908);
FILE# BLOCK# CLASS# XNC STATU OBJD TS#
---------- ---------- ---------- ---------- ----- ---------- ----------
9 907 4 0 xcur 30437 9
9 908 1 0 xcur 30437 9
Could you test your case again? |
|