1.ログを逆方向にスキャン
|
ログ |
説明 |
処理 |
undo後の値 |
|
B:T1 |
|||
|
W:T1,A,a1,a2 |
|||
|
B:T2 |
|||
|
C:T1 |
|||
|
B:T3 |
|||
|
W:T3:B,b1,b2 |
未コミット |
2.undo操作 |
B=b1 |
|
CP,{T2,T3} |
|||
|
W:T2:C,c1,c2 |
コミット済 |
(何もしない) |
|
|
W:T3:D,d1,d2 |
未コミット |
1.undo操作 |
D=d1 |
|
C:T2 |
コミット済 |
undo操作
コミットしていない
トランザクションは
before imageに戻す
アボートしたトランザクションT3
B:T3まで遡る