+ // Log a committed paxos instance
+ struct log_instance {
+ unsigned number;
+ string value;
+ MEMBERS(number, value)
+ LABEL("done")
+ };
+
+ // Log the highest proposal number that the local paxos acceptor has
+ // ever seen; called from paxos when responding to preparereq with
+ // accept
+ struct log_proposal {
+ prop_t promise;
+ MEMBERS(promise)
+ LABEL("propseen")
+ };
+
+ // Log the highest proposal (proposal number and value) that the local
+ // paxos acceptor accept has ever accepted; called from paxos when
+ // responding to acceptreq with true
+ struct log_accept {
+ prop_t number;
+ string value;
+ MEMBERS(number, value)
+ LABEL("accepted")
+ };
+