1 / 13

Implementing all-or-nothing atomicity

Barbara Liskov MIT CSAIL april 2007. Implementing all-or-nothing atomicity. Xfer. xfer(A, B, amt) A <- A – amt; B <- B + amt;. recovery. start at the top: while more records if commit add t to committed list if change and t not in committed list, undo start at the bottom:

denton-moss
Download Presentation

Implementing all-or-nothing atomicity

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Barbara Liskov MIT CSAIL april 2007 Implementing all-or-nothing atomicity

  2. Xfer • xfer(A, B, amt) A <- A – amt; B <- B + amt;

  3. recovery start at the top: while more records if commit add t to committed list if change and t not in committed list, undo start at the bottom: while more records if change and t in committed list, redo

  4. Scenario <begin 17>

  5. Scenario <begin 17> <begin 18>

  6. Scenario <begin 17> <begin 18> <change 18 F 4500 5300>

  7. Scenario <begin 17> <begin 18> <change 18 F 4500 5300> <outcome 18 abort>

  8. Scenario <begin 17> <begin 18> <change 18 F 4500 5300> <outcome 18 abort> <begin 19>

  9. Scenario <begin 17> <begin 18> <change 18 F 4500 5300> <outcome 18 abort> <begin 19> <change 19 F 4500 5000>

  10. Scenario <begin 17> <begin 18> <change 18 F 4500 5300> <outcome 18 abort> <begin 19> <change 19 F 4500 5000> <outcome 19 commit>

  11. Scenario <begin 17> <begin 18> <change 18 F 4500 5300> <outcome 18 abort> <begin 19> <change 19 F 4500 5000> <outcome 19 commit> <change 17 F 5000 4000>

  12. Scenario <begin 17> <begin 18> <change 18 F 4500 5300> <outcome 18 abort> <begin 19> <change 19 F 4500 5000> <outcome 19 commit> <change 17 F 5000 4000> <change 17 B 7500 8500>

  13. Scenario <begin 17> <begin 18> <change 18 F 4500 5300> <outcome 18 abort> <begin 19> <change 19 F 4500 5000> <outcome 19 commit> <change 17 F 5000 4000> <change 17 B 7500 8500> <outcome 17 commit>

More Related