diff --git a/README.md b/README.md index 06eeb9b752e09524c55453cf377df6c9b8eb18e5..3c44245f156109ed15b7025347799655abb359c1 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ # Project 5: Transactional Support From a Log +<font =-1>v1.0</font> # Overall Project Description @@ -76,10 +77,9 @@ Our transaction substrate is modeled on that in Tango. Update transactions are *optimistic*, and commit only if isolation is preserved for the entire transaction execution. Said another way: - **Definition 1:** * T<sub>i</sub> commits iff for each read r in T<sub>i</sub>: -<br> - r is not a **dirty write** * // note that the paper does not mention this -*<br> - there are no writes (without -associated aborts) to r's key in the log between r and T<sub>i</sub>'s commit.* + **Definition 1:** * T<sub>i</sub> commits iff for each read r in T<sub>i</sub>, +the value read by* r *is not stale by the time T<sub>i</sub>'s commit record is encountered.* + Transactions that are observed to commit have their writes reflected in the clients local key-value store. @@ -99,7 +99,7 @@ ignored by other replicas. ## Part 2: Snapshot Isolation -Your decision as to how to implement this, but it should not involve any changes to the +Your decision as to how to implement this, but it need not involve any changes to the log abstraction in `replica.go`