The same schedule can pass the strict, cascadeless, and recoverable checks.

highlighted = computed this step

Three safety checks

The same small schedule can be checked three ways. First inspect the schedule, then read the three labels.

strictACArecoverable\text{strict}\Rightarrow\text{ACA}\Rightarrow\text{recoverable}

Show the safe schedule

The diagram shows a schedule where later reads and writes stay behind commit boundaries.

safe boundary order\text{safe boundary order}

Safe commit and rollback schedules are tiny finite histories; logging, undo, ARIES, timing, isolation-level, product, and performance claims are out of scope.

Strict implies safer classeseventtxopitemvalue1T1wX102T1c3T2wX204T2c5T3rX6T3c reads-from factsreadEventreaderitemwriterwriteEventvalue5T3XT2320 external read dependencieswriterreaderitemwriteEventreadEventT2T3X35 classificationsfactvaluerecoverableyescascadelessyesstrictyes violationsnkindtx/readerwriteritemnonenonenonenonenone

Read the three labels

For the strict example: strict is yes, cascadeless is yes, and recoverable is yes.

strict=yes,ACA=yes\text{strict}=yes,\quad \text{ACA}=yes

Summary

The labels are useful after the mechanism is visible: strict is the strongest of these three checks in this scoped model.

scoped hierarchy\text{scoped hierarchy}