This commit was manufactured by cvs2svn to create tag 'buildscript'.
[IRC.git] / Robust / src / Runtime / DSTM / docs / commitnotes
diff --git a/Robust/src/Runtime/DSTM/docs/commitnotes b/Robust/src/Runtime/DSTM/docs/commitnotes
deleted file mode 100644 (file)
index ee0c550..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-Per object possibilities:
-
-1) Lock acquired, version id matches
-
-2) No lock, but version id matches
-
-3) Version id doesn't match
-
-4) Not here
-
-Participant responses to coordinator
-
-A) DISAGREE (if we ever see at least 1 #3)
-
-B) AGREE (all #1)
-
-C) AGREE BUT MISSING OBJECTS (mixture of #1 and #4 - no #2 or #3) -
-return list of oid's for missing objects (need to build list)
-
-D) SOFT ABORT (need #2, could have #1, #4, can't have #3) - make sure
-there are no #3's
-
-Coordinator:
-
-I) ABORT (Any A's) (rerun computation, clear out transaction records, etc...)
-
-II) COMMIT (All B's) - do local commit, free storage
-
-III) ABORT BUT RETRY COMMIT (don't rerun computation) (Need D, can
-have B's, can have C', no A's)
-
-IV) ABORT BUT RETRY COMMIT WITH RELOCATING (don't rerun computation,
-but relookup all missing objects) (Need C, can have B's, no A's, no
-D's)
-
-Other machine involved in transaction:
-
-I) COMMIT - commit object into store, send ACK to coordinator
-
-II) ABORT - unlock objects, free transaction resources, send ACK to coordinator
-
-III) Coordinator unreachable:
-
-       1) Elect leader out of reachable nodes (choose smallest reachable mid)
-
-       2) leader queries everyone for what they've heard
-(ABORT/COMMIT/nothing)
-
-       3) If anyone has heard commit from original leader, all commit
-
-       4) If anyone has heard abort from original leader, all abort
-
-       5) Otherwise leader does following:
-
-       for each mid in group send SUSPICIOUS_ABORT()
-
-       receive acknowledgements from mid's
-
-       for each mid in group send TRUST_ONLY(nodes that send
-acknowledgements)
-
-       In case 5, machines become suspicious of all current machines
-not on the list.  When first contacting (or being contacted by a
-machine isn't in the list, it is suspicious of all current machines
-except the leader).  The machine won't talk to a machine it is
-suspicious of until it can verify that the other machines made the
-same decision on all "suspicious" transactions.
-
-COORDINATOR:
-
-Once it has received ACK's from all other machines in transaction:
-
-1) It sends a recycle transaction id message (they don't need to
-remember the ABORT/COMMIT result of that id anymore)
-
-2) After sending all these messages and receiving ack's, it marks it
-local copy of transaction id recyclable