Slideshow:
|
|
|
|
|
Transaction manager executes an operation /* ======================================= Undo log write rule R1 ======================================= */ if ( operation = OUTPUT(X) (to disk) ) { 1. FLUSH log(on disk); // This will OUTPUT <T, X, v> to disk 2. OUTPUT(X) (on disk); } /* ======================================= Undo log write rule R2 ======================================= */ else if ( operation = OUTPUT <COMMIT T> (to disk) ) { 1. for ( each DB item D updated by transaction T ) { OUTPUT(D); // Write (new value) to disk } 2a. write <COMMIT T> to log; 2b. FLUSH log (to disk); } else { Execute operation // No further action needed } |
Note:
|
|