oracle itl 故障,关于ITL的重用与读一致性问题
对于回滚段的递归重构我是理解的,问题是要找到回滚段首先就要找到对应的事务插槽(ITL)中记录的UBA,但是如果这个ITL被重用,oracle是如何得到被重用之前的ITL?
比如
ITL 0x01 被重用前状态
Itl Xid Uba Flag Lck Scn/Fsc
0x01 0x0008.02d.0000009d 0x008072f1.0025.0b ---- 1 fsc 0x0000.00000000
0x02 0x0009.01d.000000a0 0x008073f2.0025.10 ---- 1 fsc 0x0000.00000000
0x03 0x0007.013.0000009e 0x00807816.0025.1f ---- 1 fsc 0x0000.00000000
0x04 0x000a.01a.0000009d 0x0080022a.002d.2e ---- 1 fsc 0x0000.00000000
ITL 0x01 提交后的状态
Itl Xid Uba Flag Lck Scn/Fsc
0x01 0x0008.02d.0000009d 0x008072f1.0025.0b --U- 1 fsc 0x0000.00064f49
0x02 0x0009.01d.000000a0 0x008073f2.0025.10 ---- 1 fsc 0x0000.00000000
0x03 0x0007.013.0000009e 0x00807816.0025.1f ---- 1 fsc 0x0000.00000000
0x04 0x000a.01a.0000009d 0x0080022a.002d.2e ---- 1 fsc 0x0000.00000000
ITL 0x01 被另一事务重用后状态
Itl Xid Uba Flag Lck Scn/Fsc
0x01 0x0008.026.0000009d 0x008072f1.0025.0c ---- 1 fsc 0x0000.00000000
0x02 0x0009.01d.000000a0 0x008073f2.0025.10 ---- 1 fsc 0x0000.00000000
0x03 0x0007.013.0000009e 0x00807816.0025.1f ---- 1 fsc 0x0000.00000000
0x04 0x000a.01a.0000009d 0x0080022a.002d.2e ---- 1 fsc 0x0000.00000000
通过重用后的ITL如何得到重用前的ITL?
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
