undo transaction slot被覆盖引起ORA(3)

2        30      4562          8        16        25      6270    ae9241

alter system flush buffer_cache;

alter system dump datafile 8 block 16; 

---data block dump的结果中摘录了Rec#0x19内容:

*-----------------------------

* Rec #0x19  slt: 0x1e  objn: 90344(0x000160e8)  objd: 90344  tblspc: 8(0x00000008)

*      Layer:  11 (Row)  opc: 1  rci 0x00

Undo type:  Regular undo    Begin trans    Last buffer split:  No

Temp Object:  No

Tablespace Undo:  No

rdba: 0x00000000Ext idx: 0

flg2: 0

*-----------------------------

uba: 0x02000010.187e.18 ctl max scn: 0x0000.00ae9095 prv tx scn: 0x0000.00ae909b

txn start scn: scn: 0x0000.00ae90b2 logon user: 0

prev brb: 33554460 prev bcl: 0

KDO undo record:

KTB Redo

op: 0x04  ver: 0x01

compat bit: 4 (post-11) padding: 1

op: L  itl: xid:  0x0002.004.0000111f uba: 0x0200001a.177b.09

flg: C---    lkc:  0    scn: 0x0000.00ad9579

KDO Op code: URP row dependencies Disabled

xtype: XA flags: 0x00000000  bdba: 0x010006f3  hdba: 0x010006f2

itli: 2  ispac: 0  maxfr: 4858

tabn: 0 slot: 0(0x0) flag: 0x2c lock: 0 ckix: 0

ncol: 3 nnew: 1 size: 2

col  0: [ 9]  58 53 24 4e 55 4c 4c 4c 4c

--将58 53 24 4e 55 4c 4c 4c 4c转换为varchar2,得到修改前的拷贝

select utl_raw.cast_to_varchar2(replace('58 53 24 4e 55 4c 4c 4c 4c',' ')) from dual;

UTL_RAW.CAST_TO_VARCHAR2(REPLACE('5853244E554C4C4C4C',''))

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

XS$NULLLL

alter system dump undo header "_SYSSMU2$"; 

--下面是undo header中有关事务控制和事务表的dump内容,slot 0x1e处于活动状态,0x02000010即8/16

TRN CTL:: seq: 0x187e chd: 0x0009 ctl: 0x000e inc: 0x00000000 nfb: 0x0001

mgc: 0xb000 xts: 0x0068 flg: 0x0001 opt: 2147483646 (0x7ffffffe)

uba: 0x02000014.187e.13 scn: 0x0000.00ae92e6

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/31adee041cbfddebdb0c76723168ed2c.html