X) X XXXXX of XXX System XXXXXX XXXXX The state XX XXX system XXXXX XXXXXX XXX XXXXX is XX follows: XXXXXXXXXXX Table: transID XXXXXXX XXXXXX XX X XXXXXXX (i.e. In XXXXXXXX) XXXXXXXXXXX T1 gets removed from the table XXXXX XX XXXXX-write (i.e., write XXX ush XX disk) XXX commit XXX record. Right before XXXXX XXXXXXX, XX had an entry in XXX table with l XXXXXX XXXXXXXXX. Dirty XXXX Table: pageID XXXXXX XX X P2 X XXX: XXX XXXXXXX XXXXXXX type XXXXXX log XXXXX undoNextLSN X XX - XXXXXX P5 - X XX - Update P2 - X T3 X XXXXXX P7 - X T1 X Update XX - 5 XX 4 XXXXXX - - 6 XX 3 Abort XX - 7 T1 X End - - - X) Redo Phase The REDO phase XXXXXX at XXX XXXXXX, XXXXX is XXX smallest LSN in the XXXXX XXXX Table. XX this XXXXXXX, it's XXX X. For each XXXXXXXX log record (update or XXX), XXX XXXX XXXXX XXXXXX the XXXXXX XX XXXXXXXXX. To XXXXX XX the system XXXXX to reapply XXX change to XXX page, it XXX XXXXXX XX the XXXX XX in the XXXXX XXXX Table. If it XX in the table, then it checks XXXX XXX recLSN XXX the page XX lower or XXXXX to the XXX XX the XXXXXX XXXXX XXXXXXXXXXXXX. XX XXXX is XXX XXXX, then nally the system reads the XXXX XXXX XXXX XXX XXXXXX XX XXX pageLSN XX XXXXXXXX XXXXXXX than XXX XXXXXXX LSN. If XXXX XX the case XXXX it redoes XXX change. Otherwise, it XXXXX the XXXXXX. In XXX example, XX get the following: LSN 1: XXXXXX. XXX X: XXXXXX XXX 3: No XXXX to XXXX XXXXXXX XXXX LSN XX 3 XXXXXXX. LSN 4: Redone XXX X: Skipped XX this point, XXX XXXXXX is back in XXX state XX the XXXX when the XXXX of XXX log was last ushed XX disk. The XXXXXX XXX XXX XXXXX an END type record XXX XX. XXXX record will XXXX XXX 6. XX can XXXX XX removed XXXX XXX Transaction Table. 4) XXX XXXXXX must XXXX T2. XX's XXX XXXX XXXXXXXXXXX in the Transaction Table. XXX lastLSN is 3. XX XX XXXXX undo XX this LSN 3. There XX no need to XXXXX an abort log record during undo. XXX XXXXXX XXX write XXXX XXXXXXXX: X Second Crash XXX's XXXXXXXX XXXXXXX XXXXXXXXX for a second crash: XXXXXX crashes XXXXXXX XXXXXX XXXXXXX XXX of the new XXX XXXXXXX or XXXXX XX XXXX: In XXXX case, the system XXXX redo XXX XXXXXXXX, XXXX, and undo XXXXXX in exactly the same way as we did XXXXX. XXXXXX ushes the XXX XX disk, except for XX's XXX XXX record: In XXXX XXXX, at the end of XXX XXXXXXXX phase, XXXX XX is in the XXXXXXXXXXX XXXXX. We have the XXXX Dirty XXXX XXXXX. The XXXX XXXXX XX XXX XXXX XX XXXXX until XXX 5. XXX XXX 6, the system XXXX XXXXXXX. XXX XXX X, XX XX previously ushed the page XX disk, XXXX we XXXX it. Otherwise, we XXXXXXX the change. XXXX for LSN 8. Finally, XXX undo XXXXX XXXX XXXX T2. XX nds a XXX XXX T2 without XXX XXXXXXXXXXX. So it XXXXXX an XXX XXX XXXXXX XXXXXXXX. XXXXXX ushed XXX XXXXXX XXX log XX XXXX: XX XXXX XXXX, the XXXXXXXXXXXX table XX XXX XXX of XXX analysis XXXXX XX empty XXX the XXXXXX would not undo anything. System XXXXXXX after XXXXXX CLR with XXX X. In that case, XXX XXXX XXXXX starts from that CLR XXXX XXXXXXX XX. It directly follows the XXXX XXXXXXX XXXXXXX. XX adds XXX second XXX XXX END log XXXXXXX.