44547 lines
1.2 MiB
44547 lines
1.2 MiB
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
:p8: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
:p3: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
:p2: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
:p1: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
:p10: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
:p11: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
:p5: started with [:p8, :p10, :p11, :p4, :p9, :p7, :p5, :p2, :p1, :p6, :p3]
|
|
p10 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p7 - accept 1 1 {:val, 201}
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p6: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
:p1: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
:p9: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
p7 - Propose 1 with action nil
|
|
:p8: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
:p4: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
:p3: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
:p2: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
:p5: started with [:p5, :p7, :p1, :p11, :p8, :p6, :p4, :p9, :p2, :p3, :p10]
|
|
p5 - Propose 1 with action nil
|
|
p3 - p10 is leader
|
|
p2 - p10 is leader
|
|
p9 - p10 is leader
|
|
p6 - p10 is leader
|
|
p4 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p10
|
|
p10 - prepare from p10
|
|
p4 - prepare from p10
|
|
p2 - prepare from p10
|
|
p9 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p2 - accept 1 1 {:val, 205}
|
|
p10 SET BALLOT VALUE {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p10 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 205}
|
|
p10 accepted 1 1
|
|
p4 - accept 1 1 {:val, 205}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p10: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
:p6: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
:p5: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
:p9: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
:p3: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
:p4: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
:p2: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
:p7: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
:p11: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p5, :p7, :p11, :p6, :p1, :p3, :p4, :p2, :p10, :p9, :p8]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p3 - p10 is leader
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p10
|
|
p10 - prepare from p10
|
|
p3 - prepare from p10
|
|
p2 - prepare from p10
|
|
p4 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p8 - p10 is leader
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p10 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p4 - accept 1 1 {:val, 203}
|
|
p2 - p10 is leader
|
|
p10 accepted 1 1
|
|
p8 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p8 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p10 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p9 - p10 is leader
|
|
p4 - p10 is leader
|
|
p10: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p8: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p11: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
:p10: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
:p2: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
:p3: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
:p5: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
:p7: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
:p9: started with [:p8, :p2, :p6, :p5, :p7, :p1, :p3, :p4, :p9, :p11, :p10]
|
|
p1 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p9 - p1 is leader
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p3 - p1 is leader
|
|
p11 - accept 1 1 {:val, 207}
|
|
p1 11 7 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p11 - p1 is leader
|
|
p4: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p4: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p7: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p6: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p3: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p10: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p11: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p8: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p5: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p9: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
:p1: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
p9 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p5, :p9, :p4, :p8, :p3, :p2, :p1, :p6, :p7, :p10, :p11]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p10 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p10 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p2 - p1 is leader
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p9 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p11 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 203}
|
|
p10 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p11 decided 1 {:val, 203}
|
|
p10 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p11 - p1 is leader
|
|
p7: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p10: decided {:val, 203}
|
|
p11: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p7: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p5: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p1: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p11: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p6: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p8: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p10: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p3: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p9: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
:p2: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
p2 - Propose 1 with action nil
|
|
:p4: started with [:p4, :p2, :p10, :p7, :p6, :p3, :p5, :p8, :p11, :p1, :p9]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p3 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p11 - p1 is leader
|
|
p5: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p5: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
:p4: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
p5 - Propose 1 with action nil
|
|
:p9: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
:p6: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
p6 - Propose 1 with action nil
|
|
:p2: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
:p7: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p10, :p5, :p7, :p8, :p9, :p6, :p2, :p4, :p11, :p3, :p1]
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p11 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p11 - p1 is leader
|
|
p1: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p9: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
:p11: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
:p2: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
p7 - Propose 1 with action nil
|
|
:p6: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
p3 - Propose 1 with action nil
|
|
:p5: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
:p8: started with [:p3, :p11, :p8, :p1, :p4, :p7, :p2, :p6, :p5, :p10, :p9]
|
|
p5 - p10 is leader
|
|
p7 - p10 is leader
|
|
p6 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p9 - p10 is leader
|
|
p5 - prepare from p10
|
|
p7 - prepare from p10
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p10
|
|
p2 - prepare from p10
|
|
p9 - prepare from p10
|
|
p10 - prepare from p10
|
|
p2 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p7 - accept 1 1 {:val, 207}
|
|
p10 SET BALLOT VALUE {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p6 decided 1 {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p8: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
:p9: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
:p4: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
:p6: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
:p3: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
:p11: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
:p2: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
:p1: started with [:p8, :p7, :p11, :p3, :p10, :p2, :p4, :p5, :p6, :p1, :p9]
|
|
p2 - Propose 1 with action nil
|
|
p7 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p8 - prepare from p1
|
|
p9 - p1 is leader
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p7 - accept 1 1 {:val, 203}
|
|
p8 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 203}
|
|
p6 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p4 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p8 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
:p8: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
:p7: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
p7 - Propose 1 with action nil
|
|
:p5: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
:p3: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
:p9: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p7, :p1, :p3, :p8, :p4, :p2, :p11, :p9, :p6, :p10, :p5]
|
|
p9 - p1 is leader
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p11 - p1 is leader
|
|
p9 - p10 is leader
|
|
p5 - p10 is leader
|
|
p6 - p10 is leader
|
|
p10 - p10 is leader
|
|
p2 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p10
|
|
p6 - prepare from p10
|
|
p5 - prepare from p10
|
|
p9 - prepare from p10
|
|
p11 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p6 - accept 1 1 {:val, 203}
|
|
p10 SET BALLOT VALUE {:val, 203}
|
|
p10 - accept 1 1 {:val, 203}
|
|
p11 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p9 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p11 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p10 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p11: decided {:val, 203}
|
|
p10: decided {:val, 203}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
:p10: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p7: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p6: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p11: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p2: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p5: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p3: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p4: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p9: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p1: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
:p8: started with [:p7, :p10, :p11, :p6, :p5, :p2, :p3, :p4, :p1, :p8, :p9]
|
|
p10 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p9 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p8 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p8 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p9 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
:p2: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p5: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p3: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p6: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p8: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p7: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p11: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p4: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p10: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p9: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
:p1: started with [:p2, :p3, :p8, :p7, :p4, :p10, :p5, :p9, :p6, :p11, :p1]
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p9 - p1 is leader
|
|
p5 - p1 is leader
|
|
p10 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p9 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
:p11: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p9: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p1: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p7: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p2: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p10: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p8: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p4: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p5: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p3: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
:p6: started with [:p11, :p9, :p1, :p7, :p2, :p8, :p10, :p5, :p4, :p3, :p6]
|
|
p11 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p10 - p10 is leader
|
|
p8 - p10 is leader
|
|
p4 - p10 is leader
|
|
p3 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p10
|
|
p8 - prepare from p10
|
|
p3 - prepare from p10
|
|
p4 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p6 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 209}
|
|
p6 - accept 1 1 {:val, 209}
|
|
p8 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p4 - accept 1 1 {:val, 209}
|
|
p10 - accept 1 1 {:val, 209}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p10: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p8: decided {:val, 209}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p7: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p6: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p9: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p5: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p11: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p8: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p10: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p4: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p1: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p3: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
:p2: started with [:p7, :p6, :p8, :p9, :p5, :p11, :p10, :p4, :p1, :p3, :p2]
|
|
p7 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p11 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p10 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p2: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p11: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p10: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p7: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p4: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p9: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p1: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p8: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p5: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p6: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
:p3: started with [:p2, :p10, :p11, :p7, :p4, :p9, :p1, :p8, :p6, :p3, :p5]
|
|
p2 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p8 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p8 - accept 1 1 {:val, 206}
|
|
p6 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p8 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p8: decided {:val, 206}
|
|
p6: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
:p8: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p5: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p7: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p2: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p3: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p10: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p4: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p6: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p11: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p9: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
:p1: started with [:p8, :p5, :p7, :p2, :p3, :p10, :p4, :p6, :p11, :p1, :p9]
|
|
p8 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p11 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p6 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
:p2: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p6: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p3: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p9: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p8: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p1: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p5: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p7: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p11: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p4: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
:p10: started with [:p2, :p6, :p3, :p8, :p9, :p1, :p7, :p5, :p11, :p4, :p10]
|
|
p2 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p11 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p4 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
:p11: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p4: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p2: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p10: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p5: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p9: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p8: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p7: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p1: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p3: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
:p6: started with [:p4, :p2, :p10, :p8, :p7, :p1, :p11, :p6, :p5, :p9, :p3]
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p11 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p6 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
:p7: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p9: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p4: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p11: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p1: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p10: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p6: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p8: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p3: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p5: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
:p2: started with [:p7, :p11, :p10, :p6, :p8, :p9, :p4, :p1, :p3, :p5, :p2]
|
|
p7 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p11
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
:p7: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p8: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p3: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p11: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p2: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p10: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p9: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p5: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p6: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p4: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
:p1: started with [:p11, :p7, :p3, :p10, :p5, :p6, :p8, :p2, :p4, :p9, :p1]
|
|
p7 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - prepare from p1
|
|
p1 Try to run prepared
|
|
p2 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p9 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p8 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p5: started
|
|
:p10: started
|
|
:p11: started
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
:p9: started
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
:p3: started
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
:p1: started
|
|
:p6: started
|
|
p10 - Propose 1 with action nil
|
|
:p4: started
|
|
:p8: started
|
|
:p2: started
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
:p7: started
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
p2 - Propose 1 with action nil
|
|
spare = [:p3, :p6, :p7, :p11, :p8, :p10]
|
|
kill: leaders, followers = [:p2, :p4], [:p9, :p5, :p1]
|
|
p8 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p10
|
|
p6 - prepare from p10
|
|
p7 - prepare from p10
|
|
p11 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p7 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p6 - accept 1 1 {:val, 202}
|
|
p6 - p10 is leader
|
|
p10 accepted 1 1
|
|
p8 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p3 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p7 - p10 is leader
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p3 - p10 is leader
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p8: started
|
|
:p1: started
|
|
:p10: started
|
|
:p6: started
|
|
:p3: started
|
|
:p4: started
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
:p9: started
|
|
:p11: started
|
|
:p2: started
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
:p5: started
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
p1 - Propose 1 with action nil
|
|
spare = [:p5, :p4, :p9, :p10, :p7, :p6]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p1], [:p11, :p3, :p8]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - p1 is leader
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p2 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p9 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p10 - p1 is leader
|
|
p1 decided 1 {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p5: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p8: started
|
|
:p9: started
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
:p11: started
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
:p10: started
|
|
:p4: started
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
:p7: started
|
|
:p6: started
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
:p5: started
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
p9 - Propose 1 with action nil
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
spare = [:p11, :p6, :p2, :p7, :p3, :p9]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
kill: leaders, followers = [:p5, :p10], [:p8, :p4, :p1]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p10 - p1 is leader
|
|
p9 - p10 is leader
|
|
p3 - p10 is leader
|
|
p6 - p10 is leader
|
|
p7 - p10 is leader
|
|
p11 - p10 is leader
|
|
p2 - p10 is leader
|
|
p9 - p11 is leader
|
|
p3 - p11 is leader
|
|
p6 - p11 is leader
|
|
p7 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p11
|
|
p7 - prepare from p11
|
|
p6 - prepare from p11
|
|
p3 - prepare from p11
|
|
p2 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 202}
|
|
p9 - accept 1 1 {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p7 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p2 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
:p3: started
|
|
:p1: started
|
|
:p11: started
|
|
:p9: started
|
|
:p2: started
|
|
:p5: started
|
|
:p8: started
|
|
:p6: started
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p7: started
|
|
:p10: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p5, :p10, :p3, :p6, :p2]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
p7 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p10
|
|
p2 - prepare from p10
|
|
p5 - prepare from p10
|
|
p3 - prepare from p10
|
|
p6 - prepare from p10
|
|
p4 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p2 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p10 SET BALLOT VALUE {:val, 204}
|
|
p10 - prepared 1 1 nil nil
|
|
p6 - accept 1 1 {:val, 204}
|
|
p10 Try to run prepared
|
|
p10 11 7 true
|
|
p5 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p2: started
|
|
:p4: started
|
|
:p5: started
|
|
:p3: started
|
|
:p6: started
|
|
:p10: started
|
|
:p9: started
|
|
:p8: started
|
|
:p1: started
|
|
:p11: started
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
p2 - Propose 1 with action nil
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
spare = [:p1, :p9, :p6, :p7, :p11, :p8]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
kill: leaders, followers = [:p3, :p2], [:p5, :p10, :p4]
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p8 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 201}
|
|
p7 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p8: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
:p9: started
|
|
:p4: started
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
:p10: started
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
:p1: started
|
|
:p11: started
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
:p5: started
|
|
:p8: started
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
:p2: started
|
|
:p6: started
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
:p3: started
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
:p7: started
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
spare = [:p11, :p3, :p8, :p4, :p1, :p10]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
p5 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p5, :p6], [:p2, :p9, :p7]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p8 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p6 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p4 - accept 1 1 {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p1 11 8 true
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 202}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 202}
|
|
p11 - p1 is leader
|
|
p10: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p5: started
|
|
:p1: started
|
|
:p8: started
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
:p2: started
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
:p3: started
|
|
:p11: started
|
|
:p6: started
|
|
:p10: started
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p1 - Propose 1 with action nil
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
:p7: started
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
:p9: started
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
p7 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p10, :p9, :p6, :p2, :p1]
|
|
kill: leaders, followers = [:p3, :p8], [:p5, :p4, :p11]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p10 - p1 is leader
|
|
p6 - p1 is leader
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p6 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - accept 1 1 {:val, 201}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p2: started
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p10: started
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
:p11: started
|
|
:p1: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
:p6: started
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
:p3: started
|
|
:p4: started
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
:p8: started
|
|
p1 - Propose 1 with action nil
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
:p7: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
:p5: started
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
p4 - Propose 1 with action nil
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
spare = [:p5, :p10, :p3, :p6, :p9, :p4]
|
|
kill: leaders, followers = [:p2, :p1], [:p7, :p11, :p8]
|
|
p5 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p6 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p10 decided 1 {:val, 201}
|
|
p4 - p1 is leader
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p4: started
|
|
:p1: started
|
|
:p7: started
|
|
:p9: started
|
|
:p5: started
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
:p3: started
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
:p8: started
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
:p2: started
|
|
:p6: started
|
|
:p10: started
|
|
p1 - Propose 1 with action nil
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
:p11: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
p9 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
p6 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p3, :p4, :p7, :p2, :p6]
|
|
kill: leaders, followers = [:p10, :p1], [:p8, :p5, :p11]
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p7 - prepare from p1
|
|
p6 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - p1 is leader
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 201}
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p9 - p10 is leader
|
|
p6 - p10 is leader
|
|
p3 - p10 is leader
|
|
p7 - p10 is leader
|
|
p4 - p10 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p2
|
|
p4 - prepare from p2
|
|
p7 - prepare from p2
|
|
p3 - prepare from p2
|
|
p6 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 201}
|
|
p2 Try to run prepared
|
|
p2 11 1 false
|
|
p2 - prepared 1 2 1 {:val, 201}
|
|
p2 Try to run prepared
|
|
p2 11 2 false
|
|
p2 - prepared 1 2 1 {:val, 201}
|
|
p2 Try to run prepared
|
|
p2 11 3 false
|
|
p2 - prepared 1 2 1 {:val, 201}
|
|
p2 Try to run prepared
|
|
p2 11 4 false
|
|
p2 - prepared 1 2 1 {:val, 201}
|
|
p2 Try to run prepared
|
|
p2 11 5 false
|
|
p2 - prepared 1 2 1 {:val, 201}
|
|
p2 Try to run prepared
|
|
p2 11 6 false
|
|
p2 SET BALLOT VALUE {:val, 201}
|
|
p2 - accept 1 2 {:val, 201}
|
|
p3 - accept 1 2 {:val, 201}
|
|
p9 - accept 1 2 {:val, 201}
|
|
p4 - accept 1 2 {:val, 201}
|
|
p7 - accept 1 2 {:val, 201}
|
|
p6 - accept 1 2 {:val, 201}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p3 - p2 is leader
|
|
p6 - p2 is leader
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p7 - p2 is leader
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p4 - p2 is leader
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p9 - p2 is leader
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p5: started
|
|
:p1: started
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p6: started
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
:p3: started
|
|
:p9: started
|
|
:p8: started
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p11: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p10: started
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
p1 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
spare = [:p1, :p11, :p6, :p9, :p5, :p10]
|
|
kill: leaders, followers = [:p2, :p7], [:p3, :p4, :p8]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p11 - prepare from p1
|
|
p9 - prepare from p1
|
|
p6 - prepare from p1
|
|
p5 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p10 - p1 is leader
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p9 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p11 - p1 is leader
|
|
p5: decided {:val, 201}
|
|
p10: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p9: started
|
|
:p6: started
|
|
:p1: started
|
|
:p5: started
|
|
:p4: started
|
|
:p7: started
|
|
:p11: started
|
|
:p3: started
|
|
:p10: started
|
|
:p2: started
|
|
:p8: started
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
spare = [:p11, :p7, :p10, :p8, :p3, :p2]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
kill: leaders, followers = [:p6, :p9], [:p1, :p4, :p5]
|
|
p9 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 - p10 is leader
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p8 - p10 is leader
|
|
p2 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p10
|
|
p3 - prepare from p10
|
|
p8 - prepare from p10
|
|
p2 - prepare from p10
|
|
p7 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p8 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p11 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p10: started
|
|
:p3: started
|
|
:p6: started
|
|
:p9: started
|
|
:p11: started
|
|
:p8: started
|
|
:p7: started
|
|
:p5: started
|
|
:p4: started
|
|
:p2: started
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
spare = [:p11, :p8, :p7, :p5, :p4, :p2]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p3, :p6, :p9]
|
|
p1 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 - p1 is leader
|
|
p7 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p11
|
|
p4 - prepare from p11
|
|
p2 - prepare from p11
|
|
p8 - prepare from p11
|
|
p7 - prepare from p11
|
|
p5 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p8 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p7 - p11 is leader
|
|
p5 - p11 is leader
|
|
p4 - p11 is leader
|
|
p8 - p11 is leader
|
|
p2 - p11 is leader
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
:p2: started
|
|
:p10: started
|
|
:p9: started
|
|
:p8: started
|
|
:p7: started
|
|
:p3: started
|
|
:p5: started
|
|
:p6: started
|
|
:p1: started
|
|
:p11: started
|
|
:p4: started
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
spare = [:p10, :p8, :p6, :p1, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
kill: leaders, followers = [:p2, :p9], [:p7, :p3, :p5]
|
|
p2 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
:p2: started
|
|
:p10: started
|
|
:p9: started
|
|
:p7: started
|
|
:p1: started
|
|
:p3: started
|
|
:p5: started
|
|
:p11: started
|
|
:p8: started
|
|
:p6: started
|
|
:p4: started
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
spare = [:p3, :p5, :p11, :p8, :p6, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
kill: leaders, followers = [:p2, :p10], [:p9, :p7, :p1]
|
|
p2 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - p10 is leader
|
|
p3 - p10 is leader
|
|
p11 - p10 is leader
|
|
p8 - p10 is leader
|
|
p6 - p10 is leader
|
|
p4 - p10 is leader
|
|
p3 - p11 is leader
|
|
p5 - p11 is leader
|
|
p6 - p11 is leader
|
|
p8 - p11 is leader
|
|
p11 - p11 is leader
|
|
p4 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p11
|
|
p8 - prepare from p11
|
|
p5 - prepare from p11
|
|
p11 - prepare from p11
|
|
p6 - prepare from p11
|
|
p4 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p6 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p11
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
:p11: started
|
|
:p7: started
|
|
:p10: started
|
|
:p9: started
|
|
:p8: started
|
|
:p2: started
|
|
:p6: started
|
|
:p1: started
|
|
:p5: started
|
|
:p3: started
|
|
:p4: started
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
spare = [:p2, :p6, :p1, :p5, :p3, :p4]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p10, :p9, :p8]
|
|
p11 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p4 - p1 is leader
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p6 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p6: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
:p11: started
|
|
:p10: started
|
|
:p8: started
|
|
:p4: started
|
|
:p6: started
|
|
:p7: started
|
|
:p3: started
|
|
:p2: started
|
|
:p5: started
|
|
:p9: started
|
|
:p1: started
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
spare = [:p7, :p3, :p2, :p5, :p9, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
kill: leaders, followers = [:p11, :p10], [:p8, :p4, :p6]
|
|
p11 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
:p10: started
|
|
:p3: started
|
|
:p4: started
|
|
:p5: started
|
|
:p8: started
|
|
:p9: started
|
|
:p7: started
|
|
:p1: started
|
|
:p11: started
|
|
:p2: started
|
|
:p6: started
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
spare = [:p9, :p7, :p1, :p11, :p2, :p6]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p3], [:p4, :p5, :p8]
|
|
p10 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p11 - p1 is leader
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p7 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - prepare from p1
|
|
p6 - prepare from p1
|
|
Probably recieved this before preare came to self sending with delay
|
|
p1 - prepared 1 1 nil nil
|
|
Probably recieved this before preare came to self sending with delay
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p6 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
:p8: started
|
|
:p2: started
|
|
:p7: started
|
|
:p1: started
|
|
:p4: started
|
|
:p6: started
|
|
:p3: started
|
|
:p10: started
|
|
:p11: started
|
|
:p5: started
|
|
:p9: started
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
spare = [:p6, :p3, :p10, :p11, :p5, :p9]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p8, :p2], [:p7, :p1, :p4]
|
|
p8 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - prepare from p10
|
|
p6 - prepare from p10
|
|
p11 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p9 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p11 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p3 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
:p8: started
|
|
:p9: started
|
|
:p10: started
|
|
:p5: started
|
|
:p11: started
|
|
:p1: started
|
|
:p7: started
|
|
:p6: started
|
|
:p2: started
|
|
:p3: started
|
|
:p4: started
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
spare = [:p1, :p7, :p3, :p6, :p4, :p2]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p8], [:p5, :p10, :p11]
|
|
p8 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - prepare from p1
|
|
p1 Try to run prepared
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
:p2: started
|
|
:p3: started
|
|
:p11: started
|
|
:p1: started
|
|
:p10: started
|
|
:p8: started
|
|
:p4: started
|
|
:p6: started
|
|
:p7: started
|
|
:p5: started
|
|
:p9: started
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
spare = [:p8, :p4, :p6, :p7, :p5, :p9]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
kill: leaders, followers = [:p2, :p1], [:p3, :p11, :p10]
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p8 - p4 is leader
|
|
p7 - p4 is leader
|
|
p9 - p4 is leader
|
|
p6 - p4 is leader
|
|
p5 - p4 is leader
|
|
p4 - p4 is leader
|
|
p4 sending all prepare 1 1
|
|
p4 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p4
|
|
p8 - prepare from p4
|
|
p9 - prepare from p4
|
|
p5 - prepare from p4
|
|
p7 - prepare from p4
|
|
p4 - prepare from p4
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 1 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 2 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 3 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 4 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 5 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 6 false
|
|
p4 SET BALLOT VALUE {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p7 - accept 1 1 {:val, 205}
|
|
p9 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p8 decided 1 {:val, 205}
|
|
p7 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p7: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p11: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
:p10: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
:p8: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
:p5: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
:p9: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
:p6: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
:p2: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
:p7: started with [:p5, :p10, :p3, :p9, :p8, :p2, :p6, :p1, :p11, :p7, :p4]
|
|
p2 - Propose 1 with action nil
|
|
p7 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p4 - p1 is leader
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p11 - prepare from p1
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p5 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p5 - p1 is leader
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p11 - p1 is leader
|
|
p2: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p5: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
:p9: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
:p11: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
:p1: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
:p6: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
:p8: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
:p2: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
:p3: started with [:p2, :p11, :p6, :p3, :p7, :p10, :p4, :p9, :p8, :p5, :p1]
|
|
p10 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p8 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p5 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 - p1 is leader
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p9 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p9 - p1 is leader
|
|
p4: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p4: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
:p10: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
:p1: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
:p8: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
:p9: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
:p5: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
:p6: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
p11 - Propose 1 with action nil
|
|
:p7: started with [:p8, :p11, :p1, :p2, :p10, :p9, :p3, :p7, :p4, :p5, :p6]
|
|
p7 - p11 is leader
|
|
p5 - p11 is leader
|
|
p9 - p11 is leader
|
|
p4 - p11 is leader
|
|
p6 - p11 is leader
|
|
p3 - p11 is leader
|
|
p7 - p3 is leader
|
|
p5 - p3 is leader
|
|
p9 - p3 is leader
|
|
p4 - p3 is leader
|
|
p6 - p3 is leader
|
|
p3 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p3
|
|
p4 - prepare from p3
|
|
p9 - prepare from p3
|
|
p5 - prepare from p3
|
|
p7 - prepare from p3
|
|
p3 - prepare from p3
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 2 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 3 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 4 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 5 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 6 false
|
|
p3 SET BALLOT VALUE {:val, 209}
|
|
p9 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p3 accepted 1 1
|
|
p6 - accept 1 1 {:val, 209}
|
|
p7 - accept 1 1 {:val, 209}
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p5 - accept 1 1 {:val, 209}
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p4 - accept 1 1 {:val, 209}
|
|
p3 accepted 1 1
|
|
p3 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p11: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
:p10: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
:p1: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
:p2: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
:p9: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
:p3: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
:p5: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
:p4: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
:p8: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p2, :p3, :p10, :p8, :p11, :p4, :p6, :p7, :p9, :p5, :p1]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p5 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p3 - p1 is leader
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p9 - p1 is leader
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p4: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p5: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
:p11: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
:p7: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
:p9: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
:p6: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
:p8: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
:p1: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
:p4: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p10, :p2, :p8, :p11, :p6, :p7, :p5, :p1, :p3, :p9, :p4]
|
|
p10 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p7 - prepare from p1
|
|
p10 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p9 - p1 is leader
|
|
p7 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p9 - accept 1 1 {:val, 203}
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p3 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p7: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
:p11: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
:p9: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
:p8: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
p11 - Propose 1 with action nil
|
|
:p3: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
:p5: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
:p1: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
:p2: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
:p6: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
:p10: started with [:p6, :p4, :p9, :p1, :p10, :p11, :p2, :p5, :p8, :p3, :p7]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p11 - p1 is leader
|
|
p8 - p11 is leader
|
|
p3 - p11 is leader
|
|
p2 - p11 is leader
|
|
p5 - p11 is leader
|
|
p7 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p11
|
|
p7 - prepare from p11
|
|
p3 - prepare from p11
|
|
p2 - prepare from p11
|
|
p5 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 209}
|
|
p7 - accept 1 1 {:val, 209}
|
|
p8 - accept 1 1 {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p3 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p8: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
:p2: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
:p8: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
:p7: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
:p10: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
:p5: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
p5 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
:p11: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
:p6: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
:p1: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p5, :p1, :p9, :p3, :p10, :p7, :p2, :p8, :p6, :p11, :p4]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p6 - accept 1 1 {:val, 210}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p8 - p1 is leader
|
|
p7: decided {:val, 210}
|
|
p11 - p1 is leader
|
|
p2: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p10: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
:p7: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
:p11: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
:p4: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
:p1: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
:p9: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
p8 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p7, :p5, :p9, :p4, :p3, :p8, :p11, :p2, :p6, :p1, :p10]
|
|
p5 - p1 is leader
|
|
p10 - p1 is leader
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p10 - prepare from p1
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p7 - p1 is leader
|
|
p5 - accept 1 1 {:val, 209}
|
|
p8 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p2 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p6 - accept 1 1 {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - accept 1 1 {:val, 209}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p10 decided 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p8: decided {:val, 209}
|
|
p11 - p1 is leader
|
|
p10: decided {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
:p9: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
:p4: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
p9 - Propose 1 with action nil
|
|
:p8: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
:p1: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
:p3: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p5, :p9, :p6, :p2, :p10, :p8, :p1, :p3, :p11, :p4, :p7]
|
|
p5 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p7 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p8 - accept 1 1 {:val, 208}
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p11 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p11 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p11 - p1 is leader
|
|
p8: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p11: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p9: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
:p10: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
:p3: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
:p2: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
:p8: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
:p7: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p8, :p10, :p3, :p9, :p6, :p5, :p7, :p11, :p4, :p1, :p2]
|
|
p8 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p7 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p7 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 208}
|
|
p2 - p1 is leader
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p11 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p11 - p1 is leader
|
|
p5: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p11: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
:p4: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p10: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p3: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p11: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p6: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p1: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p5: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p9: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p8: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p7: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
:p2: started with [:p4, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p7, :p8, :p2]
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p8 - p11 is leader
|
|
p9 - p11 is leader
|
|
p11 - p11 is leader
|
|
p7 - p11 is leader
|
|
p5 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p11
|
|
p11 - prepare from p11
|
|
p2 - prepare from p11
|
|
p8 - prepare from p11
|
|
p9 - prepare from p11
|
|
p7 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p5 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p11 SET BALLOT VALUE {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p2 - p11 is leader
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p7 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
:p3: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p10: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p9: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p4: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p11: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p2: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p5: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p1: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p6: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p8: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
:p7: started with [:p3, :p9, :p10, :p4, :p2, :p5, :p6, :p8, :p11, :p1, :p7]
|
|
p3 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p11 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
:p7: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p11: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p4: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p1: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p2: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p8: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p10: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p6: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p5: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p3: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
:p9: started with [:p7, :p4, :p2, :p11, :p10, :p1, :p5, :p3, :p9, :p8, :p6]
|
|
p7 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p9 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p8 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p6 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p8 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
:p2: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p9: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p10: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p3: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p1: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p8: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p11: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p4: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p7: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p5: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
:p6: started with [:p2, :p10, :p3, :p8, :p1, :p11, :p4, :p7, :p5, :p6, :p9]
|
|
p2 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p6 - p10 is leader
|
|
p11 - p10 is leader
|
|
p9 - p10 is leader
|
|
p7 - p10 is leader
|
|
p4 - p10 is leader
|
|
p5 - p10 is leader
|
|
p11 - p11 is leader
|
|
p6 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p11
|
|
p6 - prepare from p11
|
|
p9 - prepare from p11
|
|
p4 - prepare from p11
|
|
p5 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p5 - p11 is leader
|
|
p11 Try to run prepared
|
|
p9 - p11 is leader
|
|
p4 - p11 is leader
|
|
p11 11 3 false
|
|
p7 - p11 is leader
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p5 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
:p1: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p9: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p4: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p8: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p10: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p5: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p7: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p6: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p3: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p2: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
:p11: started with [:p9, :p8, :p10, :p6, :p3, :p2, :p1, :p11, :p4, :p5, :p7]
|
|
p9 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p11 - prepare from p1
|
|
p5 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p2: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
:p3: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p7: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p2: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p10: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p4: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p5: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p1: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p8: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p9: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p11: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
:p6: started with [:p3, :p7, :p4, :p2, :p10, :p5, :p1, :p8, :p11, :p9, :p6]
|
|
p3 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p11 - p1 is leader
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p6 - prepare from p1
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
:p10: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p1: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p11: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p9: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p7: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p8: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p4: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p3: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p6: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p2: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
:p5: started with [:p1, :p11, :p7, :p4, :p10, :p2, :p9, :p8, :p3, :p6, :p5]
|
|
p1 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p2 - p1 is leader
|
|
p8 - p2 is leader
|
|
p2 - p2 is leader
|
|
p5 - p2 is leader
|
|
p6 - p2 is leader
|
|
p3 - p2 is leader
|
|
p9 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p2
|
|
p9 - prepare from p2
|
|
p6 - prepare from p2
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 4 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 5 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 6 false
|
|
p2 SET BALLOT VALUE {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p9 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
:p4: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p11: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p10: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p2: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p7: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p9: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p3: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p1: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p5: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p8: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
:p6: started with [:p4, :p10, :p11, :p7, :p2, :p3, :p5, :p9, :p8, :p6, :p1]
|
|
p4 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 202}
|
|
p9 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p8 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
:p11: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p5: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p7: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p8: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p2: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p6: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p3: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p9: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p1: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p4: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
:p10: started with [:p5, :p11, :p2, :p7, :p8, :p6, :p3, :p9, :p1, :p4, :p10]
|
|
p11 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p9 - p1 is leader
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - prepare from p1
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
:p7: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p8: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p6: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p11: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p4: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p3: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p1: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p10: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p9: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p5: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
:p2: started with [:p7, :p6, :p11, :p8, :p4, :p3, :p1, :p10, :p9, :p5, :p2]
|
|
p7 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p10 - prepare from p1
|
|
p9 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p9 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1: decided {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p1: started
|
|
:p2: started
|
|
:p4: started
|
|
:p5: started
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
:p6: started
|
|
:p8: started
|
|
:p3: started
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
:p11: started
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
p2 - Propose 1 with action nil
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p7: started
|
|
:p9: started
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
:p10: started
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
p1 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
p8 - Propose 1 with action nil
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
spare = [:p2, :p7, :p4, :p3, :p5, :p10]
|
|
kill: leaders, followers = [:p1, :p8], [:p6, :p11, :p9]
|
|
p10 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p10 - prepare from p1
|
|
p7 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p10 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - accept 1 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p2 - accept 1 1 {:val, 206}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p8 - accept 1 1 {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 11 8 true
|
|
p7 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p5 - p1 is leader
|
|
p1 accepted 1 1
|
|
p4 - p1 is leader
|
|
p1 accepted 1 1
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 2
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p10
|
|
p2 - prepare from p10
|
|
p4 - prepare from p10
|
|
p5 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 2 1 {:val, 206}
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 2 1 {:val, 206}
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 2 1 {:val, 206}
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 2 1 {:val, 206}
|
|
p3 - p10 is leader
|
|
p10 Try to run prepared
|
|
p2 - p10 is leader
|
|
p10 11 4 false
|
|
p10 - prepared 1 2 1 {:val, 206}
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 2 1 {:val, 206}
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 206}
|
|
p5 - accept 1 2 {:val, 206}
|
|
p2 - accept 1 2 {:val, 206}
|
|
p7 - accept 1 2 {:val, 206}
|
|
p4 - accept 1 2 {:val, 206}
|
|
p3 - accept 1 2 {:val, 206}
|
|
p10 - accept 1 2 {:val, 206}
|
|
p10 accepted 1 2
|
|
p10 accepted 1 2
|
|
p10 accepted 1 2
|
|
p10 accepted 1 2
|
|
p10 accepted 1 2
|
|
p10 accepted 1 2
|
|
p2 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p7 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p4 - p10 is leader
|
|
p10 decided 1 {:val, 206}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p5 - p10 is leader
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p10: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p7: decided {:val, 206}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p8: started
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
:p4: started
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p10: started
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
p4 - Propose 1 with action nil
|
|
:p7: started
|
|
:p1: started
|
|
:p5: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p6: started
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
:p3: started
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
:p11: started
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
p5 - Propose 1 with action nil
|
|
spare = [:p1, :p3, :p6, :p7, :p9, :p4]
|
|
kill: leaders, followers = [:p8, :p5], [:p10, :p2, :p11]
|
|
p1 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p3 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p3 - p1 is leader
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p7 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p6 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p7 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 206}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p7: decided {:val, 206}
|
|
p6: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
:p10: started
|
|
:p11: started
|
|
:p4: started
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
:p1: started
|
|
:p2: started
|
|
:p8: started
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
p4 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
:p5: started
|
|
:p9: started
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
:p6: started
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
:p7: started
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
spare = [:p2, :p9, :p7, :p8, :p6, :p5]
|
|
kill: leaders, followers = [:p4, :p11], [:p3, :p10, :p1]
|
|
p5 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p8 - p1 is leader
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p11 is leader
|
|
p8 - p11 is leader
|
|
p9 - p11 is leader
|
|
p7 - p11 is leader
|
|
p6 - p11 is leader
|
|
p5 - p11 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p2
|
|
p9 - prepare from p2
|
|
p8 - prepare from p2
|
|
p6 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 4 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 5 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 6 false
|
|
p2 SET BALLOT VALUE {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p2 accepted 1 1
|
|
p8 - accept 1 1 {:val, 208}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p9 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p9 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p8 - p2 is leader
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p9 - p2 is leader
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p7 - p2 is leader
|
|
p6 - p2 is leader
|
|
p5 - p2 is leader
|
|
p5: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p4: started
|
|
:p7: started
|
|
:p11: started
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p8: started
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
:p3: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
:p1: started
|
|
:p2: started
|
|
:p6: started
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p10: started
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
p5 - Propose 1 with action nil
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
p2 - Propose 1 with action nil
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
spare = [:p6, :p3, :p11, :p7, :p10, :p4]
|
|
kill: leaders, followers = [:p2, :p5], [:p8, :p9, :p1]
|
|
p6 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p11 - p1 is leader
|
|
p10 - p10 is leader
|
|
p7 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p10
|
|
p6 - prepare from p10
|
|
p7 - prepare from p10
|
|
p4 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepare from p10
|
|
p6 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p6 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 207}
|
|
p4 - p10 is leader
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p11 - accept 1 1 {:val, 207}
|
|
p3 - p10 is leader
|
|
p10 accepted 1 1
|
|
p7 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p6 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p11 - p10 is leader
|
|
p7: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p8: started
|
|
:p1: started
|
|
:p9: started
|
|
:p11: started
|
|
:p2: started
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
:p7: started
|
|
:p4: started
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
:p10: started
|
|
:p5: started
|
|
p8 - Propose 1 with action nil
|
|
:p3: started
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
:p6: started
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
p5 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
spare = [:p5, :p4, :p3, :p9, :p6, :p10]
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p8, :p11], [:p1, :p7, :p2]
|
|
p11 - Propose 1 with action nil
|
|
p8 - p1 is leader
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p11 - p1 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p10
|
|
p10 - prepare from p10
|
|
p4 - prepare from p10
|
|
p3 - prepare from p10
|
|
p9 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p9 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p5 - accept 1 1 {:val, 204}
|
|
p10 SET BALLOT VALUE {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p4 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p6 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p6 - p10 is leader
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 204}
|
|
p3 - p10 is leader
|
|
p10 accepted 1 1
|
|
p6 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p5 - p10 is leader
|
|
p10 decided 1 {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p4 - p10 is leader
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p4: started
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
:p7: started
|
|
:p10: started
|
|
:p5: started
|
|
:p2: started
|
|
:p8: started
|
|
:p6: started
|
|
:p1: started
|
|
:p9: started
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
:p11: started
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
:p3: started
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
p7 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
spare = [:p9, :p6, :p11, :p4, :p3, :p8]
|
|
p10 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p7, :p10], [:p1, :p5, :p2]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p11 - p1 is leader
|
|
p9 - p10 is leader
|
|
p6 - p10 is leader
|
|
p8 - p10 is leader
|
|
p4 - p10 is leader
|
|
p3 - p10 is leader
|
|
p11 - p10 is leader
|
|
p9 - p11 is leader
|
|
p6 - p11 is leader
|
|
p8 - p11 is leader
|
|
p4 - p11 is leader
|
|
p3 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p11
|
|
p3 - prepare from p11
|
|
p6 - prepare from p11
|
|
p4 - prepare from p11
|
|
p8 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p8 - accept 1 1 {:val, 210}
|
|
p9 - accept 1 1 {:val, 210}
|
|
p11 SET BALLOT VALUE {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p9 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
:p6: started
|
|
:p4: started
|
|
:p3: started
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
:p8: started
|
|
:p5: started
|
|
:p9: started
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
:p7: started
|
|
:p2: started
|
|
:p10: started
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
:p1: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
:p11: started
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p3, :p10, :p8, :p9, :p7]
|
|
p7 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p2, :p11], [:p6, :p1, :p5]
|
|
p11 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 - p1 is leader
|
|
p8 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p11 - p1 is leader
|
|
p9 - p10 is leader
|
|
p7 - p10 is leader
|
|
p8 - p10 is leader
|
|
p10 - p10 is leader
|
|
p4 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p10
|
|
p7 - prepare from p10
|
|
p9 - prepare from p10
|
|
p10 - prepare from p10
|
|
p3 - prepare from p10
|
|
p8 - prepare from p10
|
|
p3 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p4 - accept 1 1 {:val, 204}
|
|
p10 SET BALLOT VALUE {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p8: started
|
|
:p10: started
|
|
:p4: started
|
|
:p9: started
|
|
:p11: started
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
:p7: started
|
|
:p5: started
|
|
:p2: started
|
|
:p6: started
|
|
:p3: started
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
:p1: started
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
p10 - Propose 1 with action nil
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
spare = [:p1, :p4, :p11, :p9, :p8, :p2]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p10, :p5], [:p7, :p6, :p3]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p8 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p4 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p8 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p9 - p1 is leader
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 206}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p8: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p11 - p1 is leader
|
|
p11: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p10: started
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
:p8: started
|
|
:p11: started
|
|
:p6: started
|
|
:p4: started
|
|
:p3: started
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
:p9: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p7: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
:p2: started
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
p6 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
spare = [:p4, :p2, :p11, :p7, :p5, :p8]
|
|
kill: leaders, followers = [:p10, :p6], [:p3, :p1, :p9]
|
|
p8 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p11 - p1 is leader
|
|
p7 - p10 is leader
|
|
p8 - p11 is leader
|
|
p4 - p11 is leader
|
|
p2 - p11 is leader
|
|
p5 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p11
|
|
p4 - prepare from p11
|
|
p5 - prepare from p11
|
|
p8 - prepare from p11
|
|
p2 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p4 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p11 SET BALLOT VALUE {:val, 201}
|
|
p8 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p5 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p2 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p9: started
|
|
:p6: started
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
:p1: started
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
p9 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p7: started
|
|
:p11: started
|
|
:p3: started
|
|
:p8: started
|
|
:p10: started
|
|
:p4: started
|
|
:p2: started
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
spare = [:p6, :p3, :p1, :p11, :p5, :p7]
|
|
kill: leaders, followers = [:p10, :p9], [:p2, :p4, :p8]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p7 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p6 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p6 - accept 1 1 {:val, 204}
|
|
p6 - p1 is leader
|
|
p9 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p9 - p1 is leader
|
|
p7 - accept 1 1 {:val, 204}
|
|
p10 - p1 is leader
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p11 - p1 is leader
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
:p8: started
|
|
:p4: started
|
|
:p11: started
|
|
:p9: started
|
|
:p10: started
|
|
:p1: started
|
|
:p6: started
|
|
:p7: started
|
|
:p3: started
|
|
:p2: started
|
|
:p5: started
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
spare = [:p7, :p3, :p2, :p10, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
kill: leaders, followers = [:p4, :p8], [:p9, :p11, :p1]
|
|
p8 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p10 is leader
|
|
p7 - p10 is leader
|
|
p2 - p10 is leader
|
|
p6 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p10
|
|
p7 - prepare from p10
|
|
p3 - prepare from p10
|
|
p2 - prepare from p10
|
|
p5 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p7 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
:p8: started
|
|
:p7: started
|
|
:p4: started
|
|
:p6: started
|
|
:p1: started
|
|
:p11: started
|
|
:p9: started
|
|
:p2: started
|
|
:p5: started
|
|
:p3: started
|
|
:p10: started
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
spare = [:p3, :p7, :p5, :p6, :p9, :p10]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
kill: leaders, followers = [:p8, :p4], [:p1, :p11, :p2]
|
|
p8 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 - p10 is leader
|
|
p6 - p10 is leader
|
|
p5 - p10 is leader
|
|
p9 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - prepare from p10
|
|
p3 - prepare from p10
|
|
p6 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p5
|
|
:p7: started
|
|
:p6: started
|
|
:p1: started
|
|
:p9: started
|
|
:p10: started
|
|
:p3: started
|
|
:p4: started
|
|
:p8: started
|
|
:p2: started
|
|
:p11: started
|
|
:p5: started
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
spare = [:p3, :p4, :p8, :p2, :p11, :p5]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p6], [:p1, :p9, :p10]
|
|
p7 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - p11 is leader
|
|
p8 - p11 is leader
|
|
p11 - p11 is leader
|
|
p3 - p11 is leader
|
|
p2 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p5 - p11 is leader
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p11
|
|
p8 - prepare from p11
|
|
p3 - prepare from p11
|
|
p2 - prepare from p11
|
|
p5 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p3: started
|
|
:p10: started
|
|
:p4: started
|
|
:p8: started
|
|
:p1: started
|
|
:p9: started
|
|
:p6: started
|
|
:p11: started
|
|
:p7: started
|
|
:p5: started
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
spare = [:p1, :p6, :p11, :p9, :p7, :p5]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
kill: leaders, followers = [:p2, :p3], [:p4, :p10, :p8]
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p11 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p9 - accept 1 1 {:val, 205}
|
|
p7 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p7 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p7: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
:p11: started
|
|
:p3: started
|
|
:p7: started
|
|
:p2: started
|
|
:p4: started
|
|
:p1: started
|
|
:p5: started
|
|
:p9: started
|
|
:p6: started
|
|
:p8: started
|
|
:p10: started
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
spare = [:p5, :p6, :p9, :p8, :p3, :p10]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
kill: leaders, followers = [:p11, :p2], [:p7, :p1, :p4]
|
|
p11 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - p10 is leader
|
|
p9 - p10 is leader
|
|
p6 - p10 is leader
|
|
p8 - p10 is leader
|
|
p10 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - prepare from p10
|
|
p3 - prepare from p10
|
|
p8 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p5 - Propose 1 with action nil
|
|
p6: decided {:val, 204}
|
|
p5 - Has already decided for 1 sending {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
:p11: started
|
|
:p3: started
|
|
:p5: started
|
|
:p10: started
|
|
:p1: started
|
|
:p4: started
|
|
:p9: started
|
|
:p8: started
|
|
:p2: started
|
|
:p7: started
|
|
:p6: started
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
spare = [:p8, :p2, :p11, :p5, :p7, :p6]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p1, :p4, :p9]
|
|
p3 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 - p10 is leader
|
|
p2 - p10 is leader
|
|
p11 - p10 is leader
|
|
p6 - p10 is leader
|
|
p5 - p10 is leader
|
|
p8 - p10 is leader
|
|
p8 - p11 is leader
|
|
p11 - p11 is leader
|
|
p7 - p11 is leader
|
|
p2 - p11 is leader
|
|
p5 - p11 is leader
|
|
p6 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p11
|
|
p6 - prepare from p11
|
|
p8 - prepare from p11
|
|
p2 - prepare from p11
|
|
p5 - prepare from p11
|
|
p7 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p8 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p2 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
:p1: started
|
|
:p10: started
|
|
:p3: started
|
|
:p2: started
|
|
:p7: started
|
|
:p11: started
|
|
:p5: started
|
|
:p4: started
|
|
:p6: started
|
|
:p9: started
|
|
:p8: started
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
spare = [:p5, :p9, :p7, :p8, :p6, :p4]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
kill: leaders, followers = [:p10, :p1], [:p2, :p11, :p3]
|
|
p1 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p4 - p1 is leader
|
|
p7 - p4 is leader
|
|
p9 - p4 is leader
|
|
p8 - p4 is leader
|
|
p5 - p4 is leader
|
|
p6 - p4 is leader
|
|
p4 - p4 is leader
|
|
p4 sending all prepare 1 1
|
|
p4 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p4
|
|
p8 - prepare from p4
|
|
p5 - prepare from p4
|
|
p6 - prepare from p4
|
|
p7 - prepare from p4
|
|
p4 - prepare from p4
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 1 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 2 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 3 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 4 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 5 false
|
|
p4 - prepared 1 1 nil nil
|
|
p4 Try to run prepared
|
|
p4 11 6 false
|
|
p4 SET BALLOT VALUE {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p8 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p4 accepted 1 1
|
|
p9 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p8: started
|
|
:p5: started
|
|
:p7: started
|
|
:p4: started
|
|
:p10: started
|
|
:p6: started
|
|
:p11: started
|
|
:p2: started
|
|
:p9: started
|
|
:p3: started
|
|
:p1: started
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
spare = [:p6, :p11, :p2, :p9, :p3, :p1]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
p8 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p8, :p5], [:p7, :p4, :p10]
|
|
p5 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p9 - p1 is leader
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p2 - prepare from p1
|
|
p11 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p9 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p6 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
:p7: started
|
|
:p3: started
|
|
:p6: started
|
|
:p9: started
|
|
:p10: started
|
|
:p8: started
|
|
:p2: started
|
|
:p5: started
|
|
:p11: started
|
|
:p4: started
|
|
:p1: started
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
spare = [:p8, :p2, :p5, :p11, :p4, :p1]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p7, :p3], [:p6, :p9, :p10]
|
|
p7 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p2: decided {:val, 205}
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p4: started
|
|
:p5: started
|
|
:p7: started
|
|
:p6: started
|
|
:p8: started
|
|
:p9: started
|
|
:p11: started
|
|
:p2: started
|
|
:p10: started
|
|
:p1: started
|
|
:p3: started
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
spare = [:p9, :p11, :p2, :p10, :p1, :p3]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
kill: leaders, followers = [:p4, :p5], [:p7, :p6, :p8]
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p9 - prepare from p1
|
|
p10 - prepare from p1
|
|
p2 - prepare from p1
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p9 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p9: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p3: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
:p10: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
p3 - Propose 1 with action nil
|
|
:p2: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
:p7: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
p11 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
:p4: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
:p8: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
:p9: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
:p6: started with [:p3, :p10, :p1, :p8, :p5, :p11, :p9, :p7, :p2, :p6, :p4]
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p11 is leader
|
|
p4 - p11 is leader
|
|
p6 - p11 is leader
|
|
p11 - p10 is leader
|
|
p2 - p10 is leader
|
|
p7 - p10 is leader
|
|
p9 - p10 is leader
|
|
p4 - p10 is leader
|
|
p6 - p10 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p11
|
|
p7 - prepare from p11
|
|
p2 - prepare from p11
|
|
p4 - prepare from p11
|
|
p6 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 206}
|
|
p11 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p9 - accept 1 1 {:val, 206}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p6 - accept 1 1 {:val, 206}
|
|
p11 accepted 1 1
|
|
p7 - accept 1 1 {:val, 206}
|
|
p11 accepted 1 1
|
|
p2 decided 1 {:val, 206}
|
|
p7 decided 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p11: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p7: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p6: decided {:val, 206}
|
|
p11: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p5: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
:p11: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
:p1: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
:p9: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
:p6: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
p1 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
:p8: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
:p3: started with [:p11, :p5, :p10, :p2, :p8, :p1, :p4, :p6, :p7, :p9, :p3]
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p9 - accept 1 1 {:val, 209}
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p7: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
:p11: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
:p8: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
:p3: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
:p10: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
:p5: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
p3 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p3, :p10, :p8, :p1, :p9, :p4, :p6, :p2, :p11, :p7, :p5]
|
|
p4 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p11 - p10 is leader
|
|
p7 - p10 is leader
|
|
p5 - p10 is leader
|
|
p2 - p10 is leader
|
|
p6 - p10 is leader
|
|
p4 - p10 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p11
|
|
p5 - prepare from p11
|
|
p6 - prepare from p11
|
|
p2 - prepare from p11
|
|
p7 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p2 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p11 SET BALLOT VALUE {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p7 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p2 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p7 decided 1 {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p7: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p5: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
:p10: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
:p8: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
:p1: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
:p9: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
:p11: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
:p7: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
:p4: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
:p2: started with [:p8, :p1, :p2, :p9, :p5, :p7, :p6, :p3, :p4, :p10, :p11]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p11 - p1 is leader
|
|
p6 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p10
|
|
p11 - prepare from p10
|
|
p6 - prepare from p10
|
|
p4 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepare from p10
|
|
p7 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p4 - p10 is leader
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 203}
|
|
p10 - accept 1 1 {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p4 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 203}
|
|
p6 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p11 - accept 1 1 {:val, 203}
|
|
p3 - p10 is leader
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p11 decided 1 {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p10: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p11: decided {:val, 203}
|
|
p11 - p10 is leader
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p11: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
:p2: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
:p9: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
:p5: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
:p10: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
:p7: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
:p1: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
p1 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
:p8: started with [:p1, :p2, :p8, :p11, :p6, :p9, :p3, :p10, :p5, :p7, :p4]
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p9 - p10 is leader
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p10
|
|
p3 - prepare from p10
|
|
p5 - prepare from p10
|
|
p7 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p9 - accept 1 1 {:val, 209}
|
|
p4 - accept 1 1 {:val, 209}
|
|
p10 SET BALLOT VALUE {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p10 - accept 1 1 {:val, 209}
|
|
p3 - p10 is leader
|
|
p10 accepted 1 1
|
|
p7 - accept 1 1 {:val, 209}
|
|
p7 - p10 is leader
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 decided 1 {:val, 209}
|
|
p10 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p4 - p10 is leader
|
|
p5 - p10 is leader
|
|
p9: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p10: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p5: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
:p7: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
:p3: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
:p6: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
p6 - Propose 1 with action nil
|
|
:p10: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
:p2: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
:p8: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
:p9: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
:p4: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p1, :p6, :p7, :p4, :p2, :p8, :p3, :p5, :p10, :p11, :p9]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p9 - prepare from p1
|
|
p10 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p10 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p8 - accept 1 1 {:val, 209}
|
|
p6 - accept 1 1 {:val, 209}
|
|
p10 - accept 1 1 {:val, 209}
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - p1 is leader
|
|
p9 - accept 1 1 {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p10 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p8 - p1 is leader
|
|
p1 decided 1 {:val, 209}
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p8: decided {:val, 209}
|
|
p11 - p1 is leader
|
|
p5: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p10: decided {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p9: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
:p2: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
:p3: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
:p7: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
:p1: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
:p4: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
:p5: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p6, :p4, :p3, :p8, :p7, :p2, :p1, :p9, :p11, :p10, :p5]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p10 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p2 - prepare from p1
|
|
p10 - prepare from p1
|
|
p9 - prepare from p1
|
|
p11 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p6 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p2 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p9 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p10 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p2 - p1 is leader
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p2: decided {:val, 205}
|
|
p11 - p1 is leader
|
|
p9: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p8: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p11: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p9: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p1: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p2: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p3: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p4: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p7: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p6: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p10: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
:p5: started with [:p7, :p10, :p9, :p2, :p3, :p4, :p11, :p8, :p5, :p1, :p6]
|
|
p7 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p4 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p4 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p6 - accept 1 1 {:val, 203}
|
|
p5 - p1 is leader
|
|
p1 - accept 1 1 {:val, 203}
|
|
p8 - accept 1 1 {:val, 203}
|
|
p11 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 203}
|
|
p11 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p8 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p4: decided {:val, 203}
|
|
p8: decided {:val, 203}
|
|
p11: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p1: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
:p2: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
:p6: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
:p7: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
:p11: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
:p10: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
p10 - Propose 1 with action nil
|
|
:p4: started with [:p10, :p11, :p4, :p9, :p3, :p1, :p8, :p6, :p7, :p5, :p2]
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p8 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p2 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p7 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p6 - accept 1 1 {:val, 209}
|
|
p8 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p8: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p7: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p1: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p9: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p11: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p7: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p6: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p5: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p4: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p10: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p2: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
:p8: started with [:p11, :p3, :p7, :p4, :p8, :p10, :p9, :p6, :p2, :p5, :p1]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p10 - p1 is leader
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p6 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p11 - accept 1 1 {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p10 decided 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p10: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p6: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
:p9: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p1: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p8: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p3: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p10: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p11: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p6: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p4: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p5: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p7: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
:p2: started with [:p9, :p1, :p8, :p3, :p10, :p11, :p6, :p5, :p4, :p7, :p2]
|
|
p9 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p11 - p1 is leader
|
|
p4 - p1 is leader
|
|
p7 - p1 is leader
|
|
p2 - p1 is leader
|
|
p11 - p11 is leader
|
|
p5 - p11 is leader
|
|
p6 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p11
|
|
p11 - prepare from p11
|
|
p2 - prepare from p11
|
|
p5 - prepare from p11
|
|
p4 - prepare from p11
|
|
p7 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p4 - p11 is leader
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p2 - p11 is leader
|
|
p7 - p11 is leader
|
|
p7 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p6 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p11 SET BALLOT VALUE {:val, 203}
|
|
p11 - accept 1 1 {:val, 203}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p4 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p11 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p11: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
:p10: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p3: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p1: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p2: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p8: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p9: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p5: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p4: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p7: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p6: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
:p11: started with [:p10, :p1, :p9, :p4, :p7, :p6, :p11, :p3, :p2, :p8, :p5]
|
|
p10 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p11 - p1 is leader
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p11 is leader
|
|
p6 - p11 is leader
|
|
p2 - p11 is leader
|
|
p8 - p11 is leader
|
|
p11 - p11 is leader
|
|
p3 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p11
|
|
p3 - prepare from p11
|
|
p2 - prepare from p11
|
|
p8 - prepare from p11
|
|
p5 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p6 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
:p5: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p8: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p6: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p4: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p9: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p7: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p10: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p1: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p11: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p3: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
:p2: started with [:p5, :p4, :p7, :p8, :p9, :p10, :p11, :p1, :p3, :p6, :p2]
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p11 - p1 is leader
|
|
p6 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p10 - prepare from p1
|
|
p3 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p10 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p10 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
:p10: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p7: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p4: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p2: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p5: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p3: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p8: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p9: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p1: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p6: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
:p11: started with [:p7, :p10, :p5, :p9, :p6, :p11, :p4, :p2, :p3, :p8, :p1]
|
|
p7 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p11 - p1 is leader
|
|
p4 - p1 is leader
|
|
p8 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p8 - accept 1 1 {:val, 203}
|
|
p11 - accept 1 1 {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p11 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p8 decided 1 {:val, 203}
|
|
p8: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p11: decided {:val, 203}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
:p1: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p10: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p3: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p6: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p9: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p11: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p4: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p5: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p8: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p7: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
:p2: started with [:p10, :p1, :p9, :p4, :p8, :p3, :p2, :p6, :p11, :p5, :p7]
|
|
p1 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p11 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p11 is leader
|
|
p6 - p11 is leader
|
|
p3 - p11 is leader
|
|
p11 - p11 is leader
|
|
p7 - p11 is leader
|
|
p5 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p11
|
|
p3 - prepare from p11
|
|
p7 - prepare from p11
|
|
p5 - prepare from p11
|
|
p6 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p7 - accept 1 1 {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p7 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
:p7: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p3: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p2: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p10: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p9: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p1: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p4: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p8: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p5: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p11: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
:p6: started with [:p2, :p10, :p9, :p4, :p5, :p8, :p3, :p11, :p1, :p7, :p6]
|
|
p2 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p11 - p1 is leader
|
|
p7 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p7 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
:p11: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p9: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p5: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p4: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p7: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p6: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p2: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p1: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p3: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p10: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
:p8: started with [:p11, :p9, :p5, :p4, :p7, :p6, :p2, :p1, :p3, :p10, :p8]
|
|
p11 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p2 - prepare from p1
|
|
p6 - prepare from p1
|
|
p10 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p6 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p2: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p4: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p9: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p7: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p10: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p11: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p5: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p6: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p8: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p2: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p3: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
:p1: started with [:p4, :p5, :p7, :p10, :p9, :p8, :p6, :p11, :p1, :p2, :p3]
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p11 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p2 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
:p11: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p1: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p4: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p7: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p2: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p3: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p6: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p9: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p5: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p8: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
:p10: started with [:p11, :p4, :p2, :p7, :p3, :p6, :p9, :p8, :p5, :p10, :p1]
|
|
p11 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p1
|
|
p8 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
:p7: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p2: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p1: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p6: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p11: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p4: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p10: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p3: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p5: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p8: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
:p9: started with [:p7, :p2, :p1, :p6, :p11, :p4, :p10, :p3, :p8, :p5, :p9]
|
|
p7 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 - p10 is leader
|
|
p10 - p10 is leader
|
|
p3 - p10 is leader
|
|
p8 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p10
|
|
p3 - prepare from p10
|
|
p4 - prepare from p10
|
|
p9 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p11: started
|
|
:p1: started
|
|
:p8: started
|
|
:p6: started
|
|
:p4: started
|
|
:p7: started
|
|
:p10: started
|
|
:p2: started
|
|
:p3: started
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
:p9: started
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
:p5: started
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
p1 - Propose 1 with action nil
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p3, :p2, :p8, :p7, :p1]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p6, :p9]
|
|
p5 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p8 - accept 1 1 {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - p1 is leader
|
|
p1: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
:p10: started
|
|
:p8: started
|
|
:p1: started
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
:p3: started
|
|
:p4: started
|
|
:p11: started
|
|
:p6: started
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
:p9: started
|
|
:p2: started
|
|
:p5: started
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
:p7: started
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
spare = [:p7, :p1, :p10, :p4, :p2, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p8, :p9, :p5]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p10 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p11: started
|
|
:p10: started
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
:p5: started
|
|
:p8: started
|
|
:p6: started
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
:p1: started
|
|
:p4: started
|
|
:p2: started
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
:p9: started
|
|
:p3: started
|
|
:p7: started
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p7, :p6, :p10, :p9, :p1]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
p1 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p2, :p4], [:p3, :p11, :p8]
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p7 - prepare from p1
|
|
p6 - prepare from p1
|
|
p10 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p7 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 201}
|
|
p10 - p1 is leader
|
|
p1 accepted 1 1
|
|
p9 - p1 is leader
|
|
p6 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p7 - p1 is leader
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p3: started
|
|
:p1: started
|
|
:p5: started
|
|
:p8: started
|
|
:p4: started
|
|
:p11: started
|
|
:p6: started
|
|
:p2: started
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
:p9: started
|
|
:p10: started
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
:p7: started
|
|
p8 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p2, :p4, :p1, :p5, :p10]
|
|
kill: leaders, followers = [:p8, :p3], [:p9, :p7, :p6]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 - p1 is leader
|
|
p5 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p4 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 207}
|
|
p11 - p1 is leader
|
|
p10: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p2: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
:p4: started
|
|
:p6: started
|
|
:p11: started
|
|
:p5: started
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
:p1: started
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
:p10: started
|
|
:p9: started
|
|
:p7: started
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
:p3: started
|
|
:p8: started
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
:p2: started
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
p10 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p4, :p11, :p5, :p9, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p1, :p8, :p6]
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p10
|
|
p2 - prepare from p10
|
|
p11 - prepare from p10
|
|
p10 - prepare from p10
|
|
p7 - prepare from p10
|
|
p9 - prepare from p10
|
|
p3 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p7 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 SET BALLOT VALUE {:val, 207}
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 7 true
|
|
p10 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p10 Try to run prepared
|
|
p3 - accept 1 1 {:val, 207}
|
|
p10 11 8 true
|
|
p2 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p5 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p9 - p10 is leader
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p10 accepted 1 1
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - p10 is leader
|
|
p4 - p10 is leader
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - p10 is leader
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p11 - p1 is leader
|
|
p7: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p10: started
|
|
:p11: started
|
|
:p7: started
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
:p5: started
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
:p6: started
|
|
:p2: started
|
|
:p3: started
|
|
:p8: started
|
|
:p9: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
p1 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
p5 - Propose 1 with action nil
|
|
spare = [:p6, :p9, :p10, :p2, :p8, :p7]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p5, :p1], [:p11, :p3, :p4]
|
|
p6 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p10 - p1 is leader
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p8 - p10 is leader
|
|
p6 - p10 is leader
|
|
p9 - p10 is leader
|
|
p7 - p10 is leader
|
|
p2 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p10
|
|
p8 - prepare from p10
|
|
p7 - prepare from p10
|
|
p9 - prepare from p10
|
|
p2 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 203}
|
|
p10 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p8 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p6 - accept 1 1 {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p8 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 203}
|
|
p10: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p8: decided {:val, 203}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p6: started
|
|
:p10: started
|
|
:p4: started
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
:p9: started
|
|
:p3: started
|
|
:p2: started
|
|
:p8: started
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
:p7: started
|
|
:p1: started
|
|
:p5: started
|
|
:p11: started
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
p7 - Propose 1 with action nil
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
spare = [:p5, :p3, :p4, :p6, :p11, :p9]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p8, :p7], [:p10, :p2, :p1]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p5 - p11 is leader
|
|
p6 - p11 is leader
|
|
p3 - p11 is leader
|
|
p4 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p11
|
|
p5 - prepare from p11
|
|
p9 - prepare from p11
|
|
p6 - prepare from p11
|
|
p4 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p5 - accept 1 1 {:val, 210}
|
|
p9 - accept 1 1 {:val, 210}
|
|
p11 SET BALLOT VALUE {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p11 accepted 1 1
|
|
p6 - accept 1 1 {:val, 210}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p9 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p9 - p11 is leader
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p2: started
|
|
:p7: started
|
|
:p5: started
|
|
:p3: started
|
|
:p11: started
|
|
:p6: started
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
:p4: started
|
|
:p10: started
|
|
:p9: started
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
:p1: started
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
:p8: started
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
p6 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
spare = [:p10, :p9, :p5, :p2, :p7, :p8]
|
|
kill: leaders, followers = [:p6, :p4], [:p1, :p3, :p11]
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p4 - p1 is leader
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p8 - p1 is leader
|
|
p9 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p10
|
|
p9 - prepare from p10
|
|
p2 - prepare from p10
|
|
p7 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p8 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p7 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p7 - p10 is leader
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p5 - p10 is leader
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p2 - p10 is leader
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - p10 is leader
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p8: started
|
|
:p3: started
|
|
:p11: started
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
:p6: started
|
|
:p1: started
|
|
:p5: started
|
|
:p2: started
|
|
:p7: started
|
|
:p10: started
|
|
:p9: started
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
:p4: started
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
p11 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
spare = [:p9, :p2, :p5, :p1, :p7, :p8]
|
|
p9 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p6, :p11], [:p4, :p10, :p3]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p6 - accept 1 1 {:val, 203}
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p8 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p7 - accept 1 1 {:val, 203}
|
|
p9 - accept 1 1 {:val, 203}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p11 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p8 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p11 decided 1 {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p2 - accept 1 1 {:val, 203}
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p8: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p11: started
|
|
:p1: started
|
|
:p7: started
|
|
:p2: started
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
p11 - Propose 1 with action nil
|
|
:p3: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p10: started
|
|
:p6: started
|
|
:p4: started
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
:p8: started
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
p9 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
p9 - Propose 1 with action nil
|
|
spare = [:p5, :p2, :p7, :p1, :p4, :p9]
|
|
kill: leaders, followers = [:p10, :p11], [:p6, :p3, :p8]
|
|
p5 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p5 - accept 1 1 {:val, 204}
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 204}
|
|
p4 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p9 - p1 is leader
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p7 - p1 is leader
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 204}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
:p4: started
|
|
:p3: started
|
|
:p7: started
|
|
:p11: started
|
|
:p10: started
|
|
:p5: started
|
|
:p9: started
|
|
:p6: started
|
|
:p8: started
|
|
:p1: started
|
|
:p2: started
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
spare = [:p7, :p10, :p9, :p1, :p8, :p2]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
kill: leaders, followers = [:p3, :p11], [:p5, :p4, :p6]
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p10 - prepare from p1
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p10 - accept 1 1 {:val, 203}
|
|
p8 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p9 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 203}
|
|
p10 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p8 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p10: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p8: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
:p11: started
|
|
:p6: started
|
|
:p2: started
|
|
:p1: started
|
|
:p7: started
|
|
:p3: started
|
|
:p8: started
|
|
:p9: started
|
|
:p4: started
|
|
:p10: started
|
|
:p5: started
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
spare = [:p3, :p8, :p9, :p4, :p10, :p5]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
kill: leaders, followers = [:p11, :p6], [:p2, :p1, :p7]
|
|
p11 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 - p10 is leader
|
|
p8 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 - p10 is leader
|
|
p9 - p10 is leader
|
|
p4 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p10
|
|
p3 - prepare from p10
|
|
p4 - prepare from p10
|
|
p9 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p8 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
:p7: started
|
|
:p3: started
|
|
:p2: started
|
|
:p11: started
|
|
:p9: started
|
|
:p6: started
|
|
:p1: started
|
|
:p5: started
|
|
:p8: started
|
|
:p10: started
|
|
:p4: started
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
spare = [:p1, :p11, :p5, :p8, :p10, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p3, :p6]
|
|
p7 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p11 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p4 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
:p7: started
|
|
:p6: started
|
|
:p3: started
|
|
:p5: started
|
|
:p9: started
|
|
:p1: started
|
|
:p8: started
|
|
:p11: started
|
|
:p2: started
|
|
:p10: started
|
|
:p4: started
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
spare = [:p9, :p11, :p8, :p10, :p2, :p4]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
kill: leaders, followers = [:p6, :p7], [:p3, :p5, :p1]
|
|
p6 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 - p10 is leader
|
|
p4 - p10 is leader
|
|
p8 - p10 is leader
|
|
p11 - p10 is leader
|
|
p2 - p10 is leader
|
|
p9 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p10
|
|
p11 - prepare from p10
|
|
p2 - prepare from p10
|
|
p4 - prepare from p10
|
|
p10 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p8 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
:p11: started
|
|
:p6: started
|
|
:p8: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
:p2: started
|
|
:p9: started
|
|
:p10: started
|
|
:p7: started
|
|
:p5: started
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
spare = [:p4, :p2, :p10, :p11, :p7, :p5]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
kill: leaders, followers = [:p6, :p8], [:p1, :p3, :p9]
|
|
p6 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 - p10 is leader
|
|
p2 - p10 is leader
|
|
p4 - p10 is leader
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p10
|
|
p2 - prepare from p10
|
|
p10 - prepare from p10
|
|
p11 - prepare from p10
|
|
p7 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p11 - p10 is leader
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p4 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
:p8: started
|
|
:p5: started
|
|
:p6: started
|
|
:p11: started
|
|
:p1: started
|
|
:p9: started
|
|
:p10: started
|
|
:p7: started
|
|
:p2: started
|
|
:p3: started
|
|
:p4: started
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
spare = [:p3, :p2, :p8, :p4, :p6, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
kill: leaders, followers = [:p5, :p11], [:p10, :p9, :p7]
|
|
p5 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p8 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p8: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
:p2: started
|
|
:p4: started
|
|
:p10: started
|
|
:p5: started
|
|
:p6: started
|
|
:p3: started
|
|
:p1: started
|
|
:p9: started
|
|
:p8: started
|
|
:p11: started
|
|
:p7: started
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p3]
|
|
p2 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p11 - prepare from p1
|
|
p7 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - p1 is leader
|
|
p7 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p9 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
:p9: started
|
|
:p6: started
|
|
:p7: started
|
|
:p11: started
|
|
:p10: started
|
|
:p8: started
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
:p4: started
|
|
:p5: started
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
spare = [:p3, :p4, :p7, :p10, :p5, :p2]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
kill: leaders, followers = [:p6, :p9], [:p11, :p8, :p1]
|
|
p9 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 - p10 is leader
|
|
p7 - p10 is leader
|
|
p4 - p10 is leader
|
|
p5 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p10
|
|
p7 - prepare from p10
|
|
p4 - prepare from p10
|
|
p5 - prepare from p10
|
|
p2 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
:p6: started
|
|
:p3: started
|
|
:p2: started
|
|
:p8: started
|
|
:p5: started
|
|
:p10: started
|
|
:p9: started
|
|
:p4: started
|
|
:p1: started
|
|
:p7: started
|
|
:p11: started
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
spare = [:p10, :p1, :p7, :p11, :p9, :p4]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
kill: leaders, followers = [:p6, :p3], [:p2, :p8, :p5]
|
|
p6 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p11 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p11 - prepare from p1
|
|
p10 - prepare from p1
|
|
p7 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p4 - p1 is leader
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
:p11: started
|
|
:p10: started
|
|
:p4: started
|
|
:p5: started
|
|
:p1: started
|
|
:p8: started
|
|
:p6: started
|
|
:p9: started
|
|
:p2: started
|
|
:p3: started
|
|
:p7: started
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
spare = [:p8, :p6, :p9, :p2, :p3, :p7]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
kill: leaders, followers = [:p11, :p10], [:p4, :p5, :p1]
|
|
p11 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 - p10 is leader
|
|
p6 - p10 is leader
|
|
p8 - p10 is leader
|
|
p2 - p10 is leader
|
|
p9 - p10 is leader
|
|
p3 - p10 is leader
|
|
p6 - p2 is leader
|
|
p7 - p2 is leader
|
|
p2 - p2 is leader
|
|
p8 - p2 is leader
|
|
p3 - p2 is leader
|
|
p9 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p9 - prepare from p2
|
|
p6 - prepare from p2
|
|
p7 - prepare from p2
|
|
p8 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 4 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 5 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 6 false
|
|
p2 SET BALLOT VALUE {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p6 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p3: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
:p8: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
:p6: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
:p4: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
:p7: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
p1 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
:p10: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p8, :p1, :p5, :p4, :p6, :p9, :p11, :p7, :p3, :p2, :p10]
|
|
p9 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p9 - accept 1 1 {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p8 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 Try to run prepared
|
|
p7 - accept 1 1 {:val, 209}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p10 - accept 1 1 {:val, 209}
|
|
p10 decided 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p9: decided {:val, 209}
|
|
p11 - p1 is leader
|
|
p3: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p10: decided {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p7: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
:p10: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
:p3: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
:p5: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
:p1: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
:p9: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
:p8: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
:p2: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p8, :p1, :p6, :p5, :p2, :p9, :p11, :p3, :p4, :p7, :p10]
|
|
p8 - p1 is leader
|
|
p9 - p1 is leader
|
|
p4 - p1 is leader
|
|
p7 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p7 - prepare from p1
|
|
p3 - prepare from p1
|
|
p10 - prepare from p1
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p10 - accept 1 1 {:val, 209}
|
|
p8 - accept 1 1 {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p9 - accept 1 1 {:val, 209}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p4 - accept 1 1 {:val, 209}
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p10 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p7 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9: decided {:val, 209}
|
|
p11 - p1 is leader
|
|
p7: decided {:val, 209}
|
|
p10: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p11: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p8: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
:p6: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
:p9: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
:p3: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
:p7: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
:p5: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
:p1: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
p1 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
:p4: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p4, :p1, :p3, :p6, :p8, :p7, :p2, :p5, :p11, :p10, :p9]
|
|
p7 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p5 - p1 is leader
|
|
p11 - p1 is leader
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p10
|
|
p5 - prepare from p10
|
|
p11 - prepare from p10
|
|
p9 - prepare from p10
|
|
p7 - prepare from p10
|
|
p10 - prepare from p10
|
|
p2 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p9 - p10 is leader
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p11 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p5 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p5 - p10 is leader
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p7 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p11 - p10 is leader
|
|
p11: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p11: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p8: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
:p5: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
:p11: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
:p1: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
:p4: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
:p9: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
:p6: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
p2 - Propose 1 with action nil
|
|
:p10: started with [:p3, :p2, :p7, :p11, :p5, :p8, :p4, :p9, :p1, :p6, :p10]
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p8 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 - p1 is leader
|
|
p9 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p8: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
:p10: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
:p1: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
:p4: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
p9 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
:p2: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
:p11: started with [:p1, :p2, :p6, :p8, :p5, :p9, :p7, :p3, :p10, :p11, :p4]
|
|
p2 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p10 - p1 is leader
|
|
p11 - p1 is leader
|
|
p9 - p10 is leader
|
|
p7 - p10 is leader
|
|
p4 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p10
|
|
p3 - prepare from p10
|
|
p11 - prepare from p10
|
|
p4 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p11 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p4 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p7 - accept 1 1 {:val, 207}
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p11 - p10 is leader
|
|
p3: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p11: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
:p9: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
:p10: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
p10 - Propose 1 with action nil
|
|
:p5: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
:p1: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
:p7: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
:p8: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
:p2: started with [:p10, :p7, :p5, :p2, :p4, :p6, :p8, :p11, :p9, :p1, :p3]
|
|
p6 - Propose 1 with action nil
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p6 - p1 is leader
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p6 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p11: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p8: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
:p7: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
:p4: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
:p1: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
:p10: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
:p2: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
:p5: started with [:p3, :p10, :p5, :p4, :p11, :p8, :p1, :p9, :p2, :p7, :p6]
|
|
p10 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p8 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p8 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p10 - accept 1 1 {:val, 208}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p9 - p1 is leader
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p1: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
:p11: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
:p8: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
:p5: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
:p4: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
:p7: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p6, :p5, :p8, :p7, :p10, :p9, :p11, :p4, :p3, :p1, :p2]
|
|
p6 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p6 - p10 is leader
|
|
p9 - p10 is leader
|
|
p3 - p10 is leader
|
|
p4 - p10 is leader
|
|
p2 - p10 is leader
|
|
p11 - p1 is leader
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p2 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p5: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
:p9: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
:p4: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
:p6: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
:p7: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
:p10: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
:p3: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p10, :p3, :p4, :p2, :p6, :p8, :p1, :p9, :p11, :p7, :p5]
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p10 - prepare from p1
|
|
p7 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p8 - p1 is leader
|
|
p10 - accept 1 1 {:val, 208}
|
|
p11 - accept 1 1 {:val, 208}
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p11 decided 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p7 - accept 1 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p8: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p11 - p1 is leader
|
|
p7: decided {:val, 208}
|
|
p11: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p10: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
:p1: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
:p5: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
:p3: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
p1 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
:p11: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
:p6: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
p5 - p1 is leader
|
|
:p2: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
:p7: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
:p8: started with [:p6, :p1, :p8, :p5, :p7, :p10, :p2, :p4, :p11, :p9, :p3]
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p10 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - p1 is leader
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p9 - p1 is leader
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - accept 1 1 {:val, 209}
|
|
p6 - accept 1 1 {:val, 209}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 209}
|
|
p1 11 8 true
|
|
p9 - accept 1 1 {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p4 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p10 decided 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p11 - p1 is leader
|
|
p10: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
:p3: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p9: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p7: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p6: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p10: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p1: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p4: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p8: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p11: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p2: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
:p5: started with [:p3, :p7, :p10, :p1, :p9, :p8, :p6, :p4, :p11, :p2, :p5]
|
|
p3 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p11 - p11 is leader
|
|
p6 - p11 is leader
|
|
p8 - p11 is leader
|
|
p5 - p11 is leader
|
|
p4 - p11 is leader
|
|
p2 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p11
|
|
p4 - prepare from p11
|
|
p2 - prepare from p11
|
|
p6 - prepare from p11
|
|
p11 - prepare from p11
|
|
p5 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p4 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p11 SET BALLOT VALUE {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
:p2: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p6: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p11: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p9: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p1: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p7: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p3: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p8: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p5: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p10: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
:p4: started with [:p2, :p6, :p9, :p7, :p11, :p1, :p3, :p5, :p8, :p10, :p4]
|
|
p2 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p8 - prepare from p1
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p10 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 11 2 false
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p8 - accept 1 1 {:val, 206}
|
|
p10 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p8 decided 1 {:val, 206}
|
|
p10 decided 1 {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p8: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p10: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p10: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
:p11: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p2: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p10: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p4: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p1: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p8: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p6: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p3: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p9: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p5: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
:p7: started with [:p2, :p1, :p11, :p6, :p10, :p9, :p3, :p4, :p5, :p7, :p8]
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p8 - p1 is leader
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p3 is leader
|
|
p3 - p3 is leader
|
|
p9 - p3 is leader
|
|
p5 - p3 is leader
|
|
p7 - p3 is leader
|
|
p4 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p3
|
|
p5 - prepare from p3
|
|
p4 - prepare from p3
|
|
p7 - prepare from p3
|
|
p9 - prepare from p3
|
|
p3 - prepare from p3
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 2 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 3 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 4 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 5 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 6 false
|
|
p3 SET BALLOT VALUE {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p4: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
:p6: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p3: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p1: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p9: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p8: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p2: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p11: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p10: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p7: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p5: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
:p4: started with [:p6, :p3, :p1, :p9, :p8, :p2, :p11, :p10, :p7, :p5, :p4]
|
|
p6 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 - p10 is leader
|
|
p10 - p10 is leader
|
|
p11 - p10 is leader
|
|
p7 - p10 is leader
|
|
p5 - p10 is leader
|
|
p4 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p10
|
|
p7 - prepare from p10
|
|
p11 - prepare from p10
|
|
p10 - prepare from p10
|
|
p4 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p10 - accept 1 1 {:val, 205}
|
|
p7 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p2 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p10 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p7 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p7: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p6: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p1: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p3: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p8: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p7: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p9: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p11: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p5: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p10: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
:p4: started with [:p6, :p8, :p9, :p2, :p10, :p1, :p3, :p7, :p11, :p5, :p4]
|
|
p6 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p11 - p1 is leader
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p7 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p7 decided 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p7: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p11: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
:p9: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p10: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p11: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p3: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p8: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p4: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p5: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p6: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p2: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p7: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
:p1: started with [:p9, :p10, :p11, :p3, :p8, :p4, :p5, :p6, :p2, :p7, :p1]
|
|
p9 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p7 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p7 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p7: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
:p5: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p8: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p11: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p10: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p6: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p7: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p3: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p1: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p9: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p2: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
:p4: started with [:p5, :p8, :p11, :p10, :p6, :p7, :p3, :p9, :p1, :p2, :p4]
|
|
p5 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p7 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p7: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p9: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p2: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p11: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p1: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p8: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p6: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p10: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p5: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p4: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
:p3: started with [:p7, :p2, :p11, :p1, :p9, :p8, :p6, :p10, :p5, :p4, :p3]
|
|
p7 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p6 - p10 is leader
|
|
p8 - p10 is leader
|
|
p3 - p10 is leader
|
|
p5 - p10 is leader
|
|
p4 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p10
|
|
p3 - prepare from p10
|
|
p6 - prepare from p10
|
|
p5 - prepare from p10
|
|
p4 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p6 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
:p10: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p11: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p7: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p2: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p3: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p6: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p1: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p5: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p9: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p8: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
:p4: started with [:p11, :p10, :p2, :p6, :p7, :p5, :p3, :p9, :p1, :p8, :p4]
|
|
p10 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p8 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
:p3: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p8: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p11: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p7: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p1: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p6: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p2: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p4: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p10: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p9: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
:p5: started with [:p3, :p7, :p8, :p11, :p6, :p1, :p2, :p4, :p10, :p9, :p5]
|
|
p3 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p9 - p1 is leader
|
|
p10 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p10 - accept 1 1 {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p10 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p10: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p10: started
|
|
:p1: started
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
:p2: started
|
|
:p4: started
|
|
:p6: started
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
:p11: started
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
:p7: started
|
|
:p5: started
|
|
:p8: started
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
:p9: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p8, :p4, :p1, :p7, :p2]
|
|
kill: leaders, followers = [:p9, :p5], [:p6, :p3, :p10]
|
|
p9 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p5 - prepare from p1
|
|
p7 - prepare from p1
|
|
p8 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p11 - accept 1 1 {:val, 202}
|
|
p9 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p1 Try to run prepared
|
|
p2 - p1 is leader
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 202}
|
|
p7 - accept 1 1 {:val, 202}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p8 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 202}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 202}
|
|
p11 - p1 is leader
|
|
p11: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p3: started
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
:p8: started
|
|
:p5: started
|
|
:p4: started
|
|
:p7: started
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
:p9: started
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
:p6: started
|
|
:p10: started
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
:p11: started
|
|
:p1: started
|
|
p4 - Propose 1 with action nil
|
|
:p2: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
spare = [:p6, :p2, :p1, :p11, :p8, :p5]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
kill: leaders, followers = [:p4, :p10], [:p7, :p3, :p9]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p5 - p1 is leader
|
|
p6 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 202}
|
|
p8 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 - p1 is leader
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p2 - p1 is leader
|
|
p1 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p11 - p1 is leader
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p8: started
|
|
:p4: started
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
:p2: started
|
|
:p10: started
|
|
:p7: started
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
:p11: started
|
|
:p1: started
|
|
:p6: started
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
p8 - Propose 1 with action nil
|
|
:p5: started
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
p10 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
:p3: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p11, :p5, :p1, :p4, :p8]
|
|
kill: leaders, followers = [:p6, :p10], [:p7, :p3, :p2]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p4 - p1 is leader
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p9 - accept 1 1 {:val, 202}
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p8 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p11 - p1 is leader
|
|
p8: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p11: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p3: started
|
|
:p4: started
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
:p9: started
|
|
:p1: started
|
|
:p11: started
|
|
:p10: started
|
|
:p8: started
|
|
:p2: started
|
|
:p6: started
|
|
:p7: started
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
:p5: started
|
|
p9 - Propose 1 with action nil
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
p7 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p5, :p3, :p6, :p4, :p8]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p7], [:p2, :p10, :p11]
|
|
p8 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p8 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p6 - prepare from p1
|
|
p1 11 3 false
|
|
p7 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p7 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p1: started
|
|
:p11: started
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p10: started
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
:p6: started
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
:p7: started
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p8: started
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
p9 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
p5 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
spare = [:p7, :p1, :p4, :p6, :p3, :p9]
|
|
kill: leaders, followers = [:p11, :p5], [:p8, :p2, :p10]
|
|
p3 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p7 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p7 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p9 - p1 is leader
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p9 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p3: started
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
:p7: started
|
|
p3 - Propose 1 with action nil
|
|
:p6: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
:p8: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
:p4: started
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
:p11: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
p7 - Propose 1 with action nil
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
:p5: started
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
p11 - Propose 1 with action nil
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
:p10: started
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p2, :p1, :p4, :p8, :p5]
|
|
kill: leaders, followers = [:p3, :p11], [:p6, :p9, :p10]
|
|
p5 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p4 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p8 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 203}
|
|
p8 decided 1 {:val, 203}
|
|
p11 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p8: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p6: started
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
:p10: started
|
|
:p7: started
|
|
:p5: started
|
|
:p2: started
|
|
:p11: started
|
|
:p4: started
|
|
:p8: started
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
:p1: started
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
p7 - Propose 1 with action nil
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
:p3: started
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
p11 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
spare = [:p1, :p6, :p9, :p8, :p3, :p7]
|
|
kill: leaders, followers = [:p4, :p11], [:p5, :p2, :p10]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p7 - prepare from p1
|
|
p8 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p8 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p3 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p11 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p9 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p9 - p1 is leader
|
|
p8 - accept 1 1 {:val, 208}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p6 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p7 - p1 is leader
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p8: started
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
:p10: started
|
|
:p4: started
|
|
:p5: started
|
|
:p1: started
|
|
:p9: started
|
|
:p6: started
|
|
:p11: started
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
:p7: started
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
:p2: started
|
|
:p3: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
p6 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p9, :p10, :p2, :p1, :p3, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p7, :p8]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p9 - accept 1 1 {:val, 202}
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p11: started
|
|
:p10: started
|
|
:p1: started
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
:p5: started
|
|
:p9: started
|
|
:p3: started
|
|
:p4: started
|
|
:p8: started
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
:p7: started
|
|
:p2: started
|
|
p11 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
:p6: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
p9 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p6, :p4, :p5, :p1, :p2]
|
|
kill: leaders, followers = [:p9, :p8], [:p7, :p3, :p10]
|
|
p2 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p11 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p11 - p1 is leader
|
|
p1: decided {:val, 201}
|
|
p11: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p5: started
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
:p6: started
|
|
:p8: started
|
|
:p11: started
|
|
:p4: started
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
:p1: started
|
|
:p2: started
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
:p10: started
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
:p3: started
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
:p9: started
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p7, :p11, :p9, :p5, :p2]
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p3], [:p6, :p8, :p1]
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p11 - p1 is leader
|
|
p5 - p10 is leader
|
|
p7 - p10 is leader
|
|
p2 - p10 is leader
|
|
p9 - p10 is leader
|
|
p4 - p10 is leader
|
|
p11 - p10 is leader
|
|
p5 - p11 is leader
|
|
p7 - p11 is leader
|
|
p2 - p11 is leader
|
|
p9 - p11 is leader
|
|
p4 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p11
|
|
p11 - prepare from p11
|
|
p9 - prepare from p11
|
|
p5 - prepare from p11
|
|
p2 - prepare from p11
|
|
p4 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p2 - accept 1 1 {:val, 201}
|
|
p11 SET BALLOT VALUE {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p4 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p9 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p7 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p4 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 201}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p11: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
:p5: started
|
|
:p8: started
|
|
:p9: started
|
|
:p11: started
|
|
:p6: started
|
|
:p10: started
|
|
:p4: started
|
|
:p1: started
|
|
:p7: started
|
|
:p2: started
|
|
:p3: started
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
spare = [:p4, :p1, :p2, :p7, :p3, :p8]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
kill: leaders, followers = [:p5, :p9], [:p11, :p6, :p10]
|
|
p5 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p8 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p8 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p8 - accept 1 1 {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p8 decided 1 {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 203}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p8: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
:p7: started
|
|
:p9: started
|
|
:p11: started
|
|
:p6: started
|
|
:p1: started
|
|
:p5: started
|
|
:p4: started
|
|
:p8: started
|
|
:p3: started
|
|
:p2: started
|
|
:p10: started
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
spare = [:p1, :p8, :p2, :p4, :p10, :p3]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
kill: leaders, followers = [:p7, :p6], [:p5, :p9, :p11]
|
|
p7 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p8 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p10 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p10 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 205}
|
|
p8 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p10 decided 1 {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p11: started
|
|
:p3: started
|
|
:p6: started
|
|
:p7: started
|
|
:p10: started
|
|
:p8: started
|
|
:p2: started
|
|
:p1: started
|
|
:p9: started
|
|
:p4: started
|
|
:p5: started
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
spare = [:p10, :p1, :p2, :p9, :p4, :p5]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
kill: leaders, followers = [:p11, :p6], [:p7, :p8, :p3]
|
|
p11 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - prepare from p1
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p9 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p9 decided 1 {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p10: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p7: started
|
|
:p6: started
|
|
:p11: started
|
|
:p8: started
|
|
:p2: started
|
|
:p1: started
|
|
:p9: started
|
|
:p3: started
|
|
:p10: started
|
|
:p5: started
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
spare = [:p1, :p2, :p9, :p10, :p3, :p5]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
kill: leaders, followers = [:p7, :p11], [:p4, :p8, :p6]
|
|
p7 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p10 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p5 - p1 is leader
|
|
p1 11 1 false
|
|
p3 - p1 is leader
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p10 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p9 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p10 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
:p4: started
|
|
:p7: started
|
|
:p11: started
|
|
:p9: started
|
|
:p10: started
|
|
:p5: started
|
|
:p8: started
|
|
:p2: started
|
|
:p3: started
|
|
:p6: started
|
|
:p1: started
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
spare = [:p5, :p8, :p2, :p3, :p6, :p1]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
kill: leaders, followers = [:p4, :p7], [:p11, :p9, :p10]
|
|
p4 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p8 - prepare from p1
|
|
p6 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 205}
|
|
p8 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
:p5: started
|
|
:p11: started
|
|
:p2: started
|
|
:p10: started
|
|
:p1: started
|
|
:p3: started
|
|
:p8: started
|
|
:p7: started
|
|
:p9: started
|
|
:p4: started
|
|
:p6: started
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
spare = [:p3, :p8, :p7, :p9, :p4, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
kill: leaders, followers = [:p5, :p11], [:p2, :p10, :p1]
|
|
p5 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p9 - p11 is leader
|
|
p4 - p11 is leader
|
|
p8 - p11 is leader
|
|
p7 - p11 is leader
|
|
p3 - p11 is leader
|
|
p6 - p11 is leader
|
|
p8 - p3 is leader
|
|
p9 - p3 is leader
|
|
p3 - p3 is leader
|
|
p7 - p3 is leader
|
|
p4 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p3
|
|
p4 - prepare from p3
|
|
p6 - prepare from p3
|
|
p9 - prepare from p3
|
|
p8 - prepare from p3
|
|
p3 - prepare from p3
|
|
p6 - p3 is leader
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 2 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 3 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 4 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 5 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 6 false
|
|
p3 SET BALLOT VALUE {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p9 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p8 - accept 1 1 {:val, 202}
|
|
p7 - accept 1 1 {:val, 202}
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p9 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
:p9: started
|
|
:p8: started
|
|
:p7: started
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
:p11: started
|
|
:p3: started
|
|
:p6: started
|
|
:p10: started
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
spare = [:p2, :p11, :p3, :p4, :p6, :p10]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p7], [:p5, :p8, :p1]
|
|
p9 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p11 - p10 is leader
|
|
p2 - p10 is leader
|
|
p3 - p10 is leader
|
|
p4 - p10 is leader
|
|
p6 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p10
|
|
p2 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepare from p10
|
|
p11 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
:p1: started
|
|
:p3: started
|
|
:p10: started
|
|
:p11: started
|
|
:p6: started
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
:p9: started
|
|
:p7: started
|
|
:p8: started
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
spare = [:p7, :p1, :p10, :p8, :p6, :p5]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
kill: leaders, followers = [:p3, :p11], [:p2, :p4, :p9]
|
|
p3 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p10 - prepare from p1
|
|
p5 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - p1 is leader
|
|
p1 Try to run prepared
|
|
p6 - p1 is leader
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p10 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p10: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
:p7: started
|
|
:p3: started
|
|
:p11: started
|
|
:p4: started
|
|
:p8: started
|
|
:p5: started
|
|
:p9: started
|
|
:p10: started
|
|
:p6: started
|
|
:p2: started
|
|
:p1: started
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
spare = [:p11, :p2, :p8, :p9, :p10, :p1]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p3, :p4], [:p5, :p6, :p7]
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 - p1 is leader
|
|
p8 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
Probably recieved this before preare came to self sending with delay
|
|
p9 - prepare from p1
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
Probably recieved this before preare came to self sending with delay
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p10 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p9 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p10 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
:p8: started
|
|
:p11: started
|
|
:p7: started
|
|
:p10: started
|
|
:p1: started
|
|
:p3: started
|
|
:p9: started
|
|
:p5: started
|
|
:p2: started
|
|
:p6: started
|
|
:p4: started
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
spare = [:p10, :p2, :p3, :p5, :p6, :p4]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
kill: leaders, followers = [:p8, :p7], [:p1, :p11, :p9]
|
|
p8 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - p10 is leader
|
|
p2 - p10 is leader
|
|
p10 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepare from p10
|
|
p4 - prepare from p10
|
|
p6 - prepare from p10
|
|
p2 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p6 - p10 is leader
|
|
p10 Try to run prepared
|
|
p4 - p10 is leader
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p4 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p1: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
:p9: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
:p11: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
p9 - Propose 1 with action nil
|
|
:p2: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
:p10: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
:p6: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
:p8: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p5, :p10, :p8, :p11, :p7, :p9, :p2, :p1, :p3, :p6, :p4]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p4 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p6 - accept 1 1 {:val, 203}
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p9 - accept 1 1 {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p6: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p3: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p11: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p4: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p7: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p9: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p5: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p2: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p10: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
:p1: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p1, :p8, :p7, :p4, :p2, :p10, :p11, :p5, :p3, :p9, :p6]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p10 - prepare from p1
|
|
p9 - prepare from p1
|
|
p5 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p8 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - accept 1 1 {:val, 202}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p11 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p5 - p1 is leader
|
|
p9 - accept 1 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p6 - p1 is leader
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p9 - p1 is leader
|
|
p10: decided {:val, 202}
|
|
p11 - p1 is leader
|
|
p6: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p10: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
:p1: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
:p11: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
:p2: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
:p6: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
p6 - Propose 1 with action nil
|
|
:p5: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
:p9: started with [:p6, :p11, :p7, :p8, :p5, :p3, :p2, :p10, :p9, :p1, :p4]
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p3 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p10 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p6 - accept 1 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p6 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 Try to run prepared
|
|
p4 - accept 1 1 {:val, 206}
|
|
p10 - accept 1 1 {:val, 206}
|
|
p1 11 7 true
|
|
p4 - p1 is leader
|
|
p1 - accept 1 1 {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p9 - p1 is leader
|
|
p1 accepted 1 1
|
|
p2 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p10 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p10: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p6: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
:p2: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
:p4: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
:p8: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
:p9: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
:p11: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
:p3: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
:p1: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
:p7: started with [:p7, :p6, :p11, :p3, :p9, :p2, :p8, :p4, :p5, :p1, :p10]
|
|
p7 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p6 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p8 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p6 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p10 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p7 - accept 1 1 {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p8 - accept 1 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 206}
|
|
p7 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p8 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p10 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p8: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p10: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p11: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
:p4: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
:p3: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p10: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
p1 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
:p5: started with [:p1, :p11, :p3, :p10, :p2, :p6, :p9, :p4, :p5, :p8, :p7]
|
|
p6 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p11 - accept 1 1 {:val, 202}
|
|
p1 11 7 true
|
|
p4 - accept 1 1 {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p7 - accept 1 1 {:val, 202}
|
|
p4 - p1 is leader
|
|
p5 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 202}
|
|
p8 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p8 - p1 is leader
|
|
p1 accepted 1 1
|
|
p8 decided 1 {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p7: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
:p9: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
:p4: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
:p5: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
p9 - Propose 1 with action nil
|
|
:p1: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
:p8: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
:p10: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p7, :p9, :p6, :p2, :p4, :p11, :p3, :p5, :p8, :p1, :p10]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p8 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p11 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p11: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p7: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
:p4: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
:p8: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
:p5: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
:p10: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
:p3: started with [:p7, :p3, :p11, :p8, :p9, :p10, :p5, :p2, :p1, :p6, :p4]
|
|
p3 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p10
|
|
p5 - prepare from p10
|
|
p2 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepare from p10
|
|
p1 - prepare from p10
|
|
p4 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p3 - p10 is leader
|
|
p10 SET BALLOT VALUE {:val, 203}
|
|
p10 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p10 Try to run prepared
|
|
p2 - accept 1 1 {:val, 203}
|
|
p10 11 7 true
|
|
p4 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p10 - prepared 1 1 nil nil
|
|
p6 - accept 1 1 {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p10 Try to run prepared
|
|
p10 11 8 true
|
|
p10 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p6 - p10 is leader
|
|
p1 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p3 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p10 decided 1 {:val, 203}
|
|
p2 - p10 is leader
|
|
p4 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p5: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
:p1: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
:p7: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
:p11: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
:p2: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
p7 - Propose 1 with action nil
|
|
:p3: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
:p8: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
p2 - Propose 1 with action nil
|
|
:p10: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
p11 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p7, :p2, :p6, :p3, :p1, :p11, :p9, :p10, :p5, :p8, :p4]
|
|
p7 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p8 - p10 is leader
|
|
p4 - p10 is leader
|
|
p5 - p10 is leader
|
|
p9 - p10 is leader
|
|
p11 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p11 - prepare from p10
|
|
p9 - prepare from p10
|
|
p5 - prepare from p10
|
|
p4 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p11 - accept 1 1 {:val, 208}
|
|
p10 SET BALLOT VALUE {:val, 208}
|
|
p10 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p4 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p8 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p5 - accept 1 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p11 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p11: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p10: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p9: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
:p6: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
:p3: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
:p4: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
:p8: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
:p1: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
:p10: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p8, :p1, :p7, :p6, :p5, :p10, :p2, :p11, :p4, :p9, :p3]
|
|
p10 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p11 - p1 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p10
|
|
p4 - prepare from p10
|
|
p11 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 203}
|
|
p10 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p11 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 203}
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p11 decided 1 {:val, 203}
|
|
p9 - p10 is leader
|
|
p2 - p10 is leader
|
|
p3 - p10 is leader
|
|
p4 - p10 is leader
|
|
p10: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p11: decided {:val, 203}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
:p5: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
:p10: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p6: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
:p7: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
:p1: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
:p8: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
:p3: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
:p9: started with [:p9, :p10, :p2, :p7, :p1, :p5, :p11, :p3, :p4, :p8, :p6]
|
|
p9 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p11 - p10 is leader
|
|
p6 - p10 is leader
|
|
p3 - p10 is leader
|
|
p4 - p10 is leader
|
|
p5 - p11 is leader
|
|
p8 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p11
|
|
p5 - prepare from p11
|
|
p3 - prepare from p11
|
|
p4 - prepare from p11
|
|
p11 - prepare from p11
|
|
p6 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p5 - accept 1 1 {:val, 205}
|
|
p11 SET BALLOT VALUE {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p6 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p8 - accept 1 1 {:val, 205}
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p8 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p11: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p2: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p7: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p1: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p9: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p4: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p3: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p5: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p10: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p8: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
:p6: started with [:p2, :p7, :p1, :p9, :p3, :p4, :p5, :p8, :p10, :p11, :p6]
|
|
p2 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p8 - p10 is leader
|
|
p4 - p10 is leader
|
|
p6 - p10 is leader
|
|
p10 - p10 is leader
|
|
p11 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepare from p10
|
|
p6 - prepare from p10
|
|
p4 - prepare from p10
|
|
p11 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p5 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p10 SET BALLOT VALUE {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p6 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
:p2: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p1: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p10: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p3: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p8: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p7: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p11: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p6: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p4: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p5: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
:p9: started with [:p2, :p10, :p7, :p1, :p11, :p3, :p8, :p4, :p6, :p5, :p9]
|
|
p2 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 - p10 is leader
|
|
p8 - p10 is leader
|
|
p4 - p10 is leader
|
|
p9 - p10 is leader
|
|
p5 - p10 is leader
|
|
p6 - p10 is leader
|
|
p3 - p3 is leader
|
|
p4 - p3 is leader
|
|
p8 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p3
|
|
p8 - prepare from p3
|
|
p6 - prepare from p3
|
|
p5 - prepare from p3
|
|
p9 - prepare from p3
|
|
p3 - prepare from p3
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 2 false
|
|
p5 - p3 is leader
|
|
p6 - p3 is leader
|
|
p9 - p3 is leader
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 3 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 4 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 5 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 11 6 false
|
|
p3 SET BALLOT VALUE {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
:p5: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p1: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p7: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p6: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p9: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p2: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p8: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p4: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p3: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p11: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
:p10: started with [:p5, :p7, :p6, :p9, :p2, :p8, :p4, :p3, :p11, :p10, :p1]
|
|
p5 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p8 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p11 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p11 - accept 1 1 {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p10 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p11 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p10: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p11: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
:p3: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p11: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p1: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p10: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p9: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p6: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p7: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p4: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p2: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p5: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
:p8: started with [:p3, :p10, :p9, :p11, :p4, :p2, :p5, :p1, :p6, :p7, :p8]
|
|
p3 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p8 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
:p3: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p2: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p4: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p11: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p1: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p6: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p5: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p7: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p8: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p10: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
:p9: started with [:p3, :p2, :p4, :p11, :p1, :p6, :p5, :p7, :p8, :p10, :p9]
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p6 - p10 is leader
|
|
p8 - p10 is leader
|
|
p7 - p10 is leader
|
|
p5 - p10 is leader
|
|
p9 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p10
|
|
p7 - prepare from p10
|
|
p5 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 209}
|
|
p6 - accept 1 1 {:val, 209}
|
|
p10 - accept 1 1 {:val, 209}
|
|
p9 - accept 1 1 {:val, 209}
|
|
p8 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p7 - accept 1 1 {:val, 209}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p6 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p10 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p8: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p10: decided {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
:p6: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p3: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p9: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p1: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p8: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p2: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p4: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p7: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p5: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p10: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
:p11: started with [:p3, :p1, :p6, :p4, :p5, :p9, :p7, :p10, :p11, :p8, :p2]
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p8 - p1 is leader
|
|
p9 - p1 is leader
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p11 - p1 is leader
|
|
p2 - p1 is leader
|
|
p8 - p10 is leader
|
|
p9 - p10 is leader
|
|
p11 - p10 is leader
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p2 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p10
|
|
p11 - prepare from p10
|
|
p8 - prepare from p10
|
|
p9 - prepare from p10
|
|
p2 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 206}
|
|
p8 - accept 1 1 {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p7 - accept 1 1 {:val, 206}
|
|
p10 - accept 1 1 {:val, 206}
|
|
p11 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 decided 1 {:val, 206}
|
|
p10 decided 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p8 decided 1 {:val, 206}
|
|
p7 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p7: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p11: decided {:val, 206}
|
|
p8: decided {:val, 206}
|
|
p10: decided {:val, 206}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
:p2: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p3: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p1: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p11: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p9: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p8: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p6: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p10: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p7: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p5: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
:p4: started with [:p2, :p3, :p1, :p11, :p9, :p8, :p7, :p6, :p10, :p5, :p4]
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p6 - p10 is leader
|
|
p7 - p10 is leader
|
|
p8 - p10 is leader
|
|
p4 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p10
|
|
p6 - prepare from p10
|
|
p7 - prepare from p10
|
|
p8 - prepare from p10
|
|
p4 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p10 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p5 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p10: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p9: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p6: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p7: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p4: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p11: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p8: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p10: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p2: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p5: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p3: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
:p1: started with [:p9, :p6, :p7, :p4, :p11, :p10, :p8, :p2, :p5, :p3, :p1]
|
|
p9 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p8 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p8 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
:p7: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p1: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p5: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p11: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p8: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p3: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p4: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p6: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p2: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p9: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
:p10: started with [:p7, :p1, :p5, :p11, :p8, :p2, :p3, :p4, :p6, :p9, :p10]
|
|
p7 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p4 - p1 is leader
|
|
p10 - p1 is leader
|
|
p10 - p10 is leader
|
|
p2 - p10 is leader
|
|
p3 - p10 is leader
|
|
p4 - p10 is leader
|
|
p6 - p10 is leader
|
|
p9 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p10
|
|
p2 - prepare from p10
|
|
p9 - prepare from p10
|
|
p3 - prepare from p10
|
|
p4 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p9 - accept 1 1 {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p9 decided 1 {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
:p8: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p11: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p9: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p6: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p10: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p7: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p3: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p2: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p5: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p4: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
:p1: started with [:p11, :p9, :p8, :p6, :p10, :p7, :p3, :p2, :p5, :p4, :p1]
|
|
p11 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p7 - accept 1 1 {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p7: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p2: started
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
:p9: started
|
|
:p5: started
|
|
:p7: started
|
|
:p1: started
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
:p10: started
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
:p4: started
|
|
:p11: started
|
|
:p6: started
|
|
:p8: started
|
|
:p3: started
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p3, :p8, :p1, :p2, :p10]
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p4, :p6], [:p9, :p5, :p7]
|
|
p10 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p10 - p1 is leader
|
|
p6 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p11 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p11 decided 1 {:val, 208}
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 208}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 208}
|
|
p11 - p1 is leader
|
|
p10: decided {:val, 208}
|
|
p11: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p10: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
:p11: started
|
|
:p9: started
|
|
:p3: started
|
|
:p1: started
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
:p10: started
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
:p2: started
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
:p7: started
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
:p6: started
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
:p8: started
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
:p4: started
|
|
:p5: started
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
p8 - Propose 1 with action nil
|
|
spare = [:p11, :p5, :p6, :p9, :p1, :p8]
|
|
kill: leaders, followers = [:p2, :p10], [:p4, :p3, :p7]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p8 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p6 - p1 is leader
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p8 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p9 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p8 - accept 1 1 {:val, 209}
|
|
p6 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p9 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 209}
|
|
p8: decided {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p11 - p1 is leader
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p11: started
|
|
:p6: started
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
:p10: started
|
|
:p9: started
|
|
:p4: started
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
:p5: started
|
|
:p7: started
|
|
:p2: started
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
:p8: started
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
:p1: started
|
|
p6 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
p10 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
spare = [:p6, :p7, :p9, :p1, :p8, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p4, :p2, :p3]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 201}
|
|
p11 - p1 is leader
|
|
p11: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p10: started
|
|
:p7: started
|
|
:p5: started
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
:p9: started
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
:p1: started
|
|
:p4: started
|
|
:p11: started
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
:p8: started
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
:p6: started
|
|
:p3: started
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
:p2: started
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p8, :p9, :p2, :p1, :p7]
|
|
kill: leaders, followers = [:p6, :p4], [:p5, :p10, :p11]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p7 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - p1 is leader
|
|
p3 - prepare from p1
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - prepare from p1
|
|
p3 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p7 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
:p5: started
|
|
:p4: started
|
|
:p1: started
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
p4 - Propose 1 with action nil
|
|
:p8: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p11: started
|
|
:p7: started
|
|
:p10: started
|
|
:p3: started
|
|
:p6: started
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
:p9: started
|
|
:p2: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
p10 - Propose 1 with action nil
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
spare = [:p3, :p1, :p9, :p8, :p11, :p4]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
kill: leaders, followers = [:p2, :p10], [:p5, :p6, :p7]
|
|
p2 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p10 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p11 - prepare from p1
|
|
p9 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p4 - p1 is leader
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p3 - accept 1 1 {:val, 207}
|
|
p11 - accept 1 1 {:val, 207}
|
|
p8 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p8 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p9: decided {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p11 - p1 is leader
|
|
p1: decided {:val, 207}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p11: started
|
|
:p8: started
|
|
:p1: started
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
p11 - Propose 1 with action nil
|
|
:p4: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
:p7: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
:p9: started
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
:p6: started
|
|
:p10: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
spare = [:p7, :p3, :p10, :p8, :p9, :p6]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
kill: leaders, followers = [:p5, :p11], [:p4, :p1, :p2]
|
|
p5 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p9 - p1 is leader
|
|
p10 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p11 - p1 is leader
|
|
p9 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p10
|
|
p3 - prepare from p10
|
|
p6 - prepare from p10
|
|
p7 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p6 - p10 is leader
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p7 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p7 - p10 is leader
|
|
p10 SET BALLOT VALUE {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 204}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p3 - p10 is leader
|
|
p6 - Propose 1 with action nil
|
|
p8 - p10 is leader
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 204}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p10: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p5: started
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
:p4: started
|
|
:p11: started
|
|
:p10: started
|
|
:p1: started
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
:p9: started
|
|
:p7: started
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
:p2: started
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
:p8: started
|
|
:p6: started
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
:p3: started
|
|
p11 - Propose 1 with action nil
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
p3 - Propose 1 with action nil
|
|
spare = [:p11, :p9, :p6, :p5, :p8, :p10]
|
|
kill: leaders, followers = [:p3, :p2], [:p7, :p1, :p4]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 - p10 is leader
|
|
p9 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p10
|
|
p11 - prepare from p10
|
|
p10 - prepare from p10
|
|
p6 - prepare from p10
|
|
p5 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p6 - p10 is leader
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p11 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p5 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p11 - p10 is leader
|
|
p5: decided {:val, 210}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p1: started
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
:p4: started
|
|
:p7: started
|
|
:p8: started
|
|
:p9: started
|
|
:p6: started
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
:p10: started
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
:p2: started
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
:p11: started
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
:p5: started
|
|
:p3: started
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
p9 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p8, :p7, :p3, :p10, :p9]
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p11], [:p1, :p4, :p6]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 - p10 is leader
|
|
p3 - p10 is leader
|
|
p8 - p10 is leader
|
|
p5 - p10 is leader
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepare from p10
|
|
p7 - prepare from p10
|
|
p3 - prepare from p10
|
|
p9 - prepare from p10
|
|
p8 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 7 true
|
|
p10 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p7 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p8 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
:p8: started
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p1: started
|
|
:p10: started
|
|
:p5: started
|
|
:p7: started
|
|
:p3: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
:p11: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p9: started
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
p4 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
:p6: started
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
p5 - Propose 1 with action nil
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
spare = [:p5, :p6, :p7, :p3, :p11, :p9]
|
|
kill: leaders, followers = [:p4, :p8], [:p1, :p10, :p2]
|
|
p9 - Propose 1 with action nil
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p9 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p11 - p1 is leader
|
|
p7 - p11 is leader
|
|
p6 - p11 is leader
|
|
p3 - p11 is leader
|
|
p9 - p11 is leader
|
|
p5 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p11
|
|
p7 - prepare from p11
|
|
p11 - prepare from p11
|
|
p3 - prepare from p11
|
|
p5 - prepare from p11
|
|
p6 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p7 - accept 1 1 {:val, 203}
|
|
p9 - accept 1 1 {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p11 SET BALLOT VALUE {:val, 203}
|
|
p11 - accept 1 1 {:val, 203}
|
|
p11 accepted 1 1
|
|
p6 - accept 1 1 {:val, 203}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p11: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p6: started
|
|
:p9: started
|
|
:p3: started
|
|
:p8: started
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
:p1: started
|
|
:p10: started
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
:p11: started
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
:p2: started
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
:p4: started
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
:p5: started
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
p8 - Propose 1 with action nil
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p8, :p6, :p7, :p2, :p3, :p4]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p1, :p5], [:p10, :p11, :p9]
|
|
p5 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p7 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - p1 is leader
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p7 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p4 - accept 1 1 {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
:p7: started
|
|
:p2: started
|
|
:p9: started
|
|
:p5: started
|
|
:p4: started
|
|
:p11: started
|
|
:p6: started
|
|
:p1: started
|
|
:p3: started
|
|
:p10: started
|
|
:p8: started
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
spare = [:p11, :p6, :p1, :p3, :p10, :p8]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
kill: leaders, followers = [:p7, :p2], [:p9, :p5, :p4]
|
|
p7 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p10 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p8 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p7: started
|
|
:p2: started
|
|
:p8: started
|
|
:p5: started
|
|
:p9: started
|
|
:p4: started
|
|
:p11: started
|
|
:p6: started
|
|
:p10: started
|
|
:p1: started
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
spare = [:p9, :p6, :p5, :p10, :p11, :p1]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
kill: leaders, followers = [:p3, :p8], [:p2, :p4, :p7]
|
|
p3 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p11 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p6 - prepare from p1
|
|
p10 - prepare from p1
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p9 - accept 1 1 {:val, 205}
|
|
p11 - accept 1 1 {:val, 205}
|
|
p10 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p11 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 205}
|
|
p11: decided {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p7: started
|
|
:p10: started
|
|
:p5: started
|
|
:p9: started
|
|
:p6: started
|
|
:p3: started
|
|
:p8: started
|
|
:p2: started
|
|
:p11: started
|
|
:p4: started
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
spare = [:p3, :p2, :p11, :p10, :p4, :p5]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
kill: leaders, followers = [:p1, :p9], [:p6, :p8, :p7]
|
|
p1 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p11 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p10
|
|
p11 - prepare from p10
|
|
p10 - prepare from p10
|
|
p3 - prepare from p10
|
|
p4 - prepare from p10
|
|
p2 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p2 - p10 is leader
|
|
p10 Try to run prepared
|
|
p11 - p10 is leader
|
|
p10 11 3 false
|
|
p3 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p3 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 201}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p2: started
|
|
:p5: started
|
|
:p8: started
|
|
:p4: started
|
|
:p10: started
|
|
:p9: started
|
|
:p1: started
|
|
:p6: started
|
|
:p3: started
|
|
:p11: started
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
spare = [:p2, :p3, :p8, :p10, :p1, :p11]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
kill: leaders, followers = [:p7, :p5], [:p4, :p9, :p6]
|
|
p7 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p10 - p1 is leader
|
|
p8 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p10: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p9: started
|
|
:p6: started
|
|
:p5: started
|
|
:p3: started
|
|
:p10: started
|
|
:p2: started
|
|
:p1: started
|
|
:p4: started
|
|
:p8: started
|
|
:p11: started
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
spare = [:p10, :p2, :p1, :p4, :p8, :p11]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p9], [:p6, :p5, :p3]
|
|
p7 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p11 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 Try to run prepared
|
|
p8 - p1 is leader
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p8 - accept 1 1 {:val, 204}
|
|
p10 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p11 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 204}
|
|
p8 decided 1 {:val, 204}
|
|
p11 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p10 decided 1 {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 204}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p8: decided {:val, 204}
|
|
p11: decided {:val, 204}
|
|
p10: decided {:val, 204}
|
|
p10: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
:p10: started
|
|
:p5: started
|
|
:p2: started
|
|
:p11: started
|
|
:p9: started
|
|
:p7: started
|
|
:p3: started
|
|
:p4: started
|
|
:p1: started
|
|
:p8: started
|
|
:p6: started
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
spare = [:p1, :p9, :p8, :p7, :p6, :p4]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
kill: leaders, followers = [:p10, :p5], [:p3, :p2, :p11]
|
|
p10 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p7 - p1 is leader
|
|
p8 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - prepare from p1
|
|
p6 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p9 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p7 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 205}
|
|
p7 decided 1 {:val, 205}
|
|
p9 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p8 decided 1 {:val, 205}
|
|
p6 decided 1 {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 205}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 205}
|
|
p9: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p7: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
:p7: started
|
|
:p11: started
|
|
:p3: started
|
|
:p2: started
|
|
:p9: started
|
|
:p10: started
|
|
:p5: started
|
|
:p4: started
|
|
:p6: started
|
|
:p1: started
|
|
:p8: started
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
spare = [:p5, :p10, :p6, :p4, :p1, :p8]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
kill: leaders, followers = [:p7, :p3], [:p9, :p11, :p2]
|
|
p7 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 - p1 is leader
|
|
p8 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p10 - prepare from p1
|
|
p6 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p10 - accept 1 1 {:val, 205}
|
|
p6 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p8 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 decided 1 {:val, 205}
|
|
p8 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p10 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 205}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 205}
|
|
p10: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p6: decided {:val, 205}
|
|
p8: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
:p6: started
|
|
:p10: started
|
|
:p3: started
|
|
:p7: started
|
|
:p2: started
|
|
:p9: started
|
|
:p4: started
|
|
:p1: started
|
|
:p8: started
|
|
:p11: started
|
|
:p5: started
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
spare = [:p9, :p4, :p1, :p11, :p8, :p5]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
kill: leaders, followers = [:p10, :p6], [:p7, :p3, :p2]
|
|
p6 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p11 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
:p4: started
|
|
:p3: started
|
|
:p7: started
|
|
:p10: started
|
|
:p2: started
|
|
:p9: started
|
|
:p8: started
|
|
:p6: started
|
|
:p1: started
|
|
:p11: started
|
|
:p5: started
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
spare = [:p7, :p6, :p1, :p11, :p5, :p9]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
kill: leaders, followers = [:p3, :p10], [:p8, :p4, :p2]
|
|
p3 - Propose 1 with action nil
|
|
p10 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p6 - prepare from p1
|
|
p11 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p9 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p9 - accept 1 1 {:val, 202}
|
|
p7 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 202}
|
|
p11 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 202}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
:p7: started
|
|
:p9: started
|
|
:p4: started
|
|
:p11: started
|
|
:p8: started
|
|
:p6: started
|
|
:p10: started
|
|
:p1: started
|
|
:p3: started
|
|
:p5: started
|
|
:p2: started
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
spare = [:p5, :p7, :p3, :p4, :p8, :p2]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
kill: leaders, followers = [:p9, :p11], [:p6, :p10, :p1]
|
|
p9 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - p11 is leader
|
|
p4 - p11 is leader
|
|
p3 - p11 is leader
|
|
p7 - p11 is leader
|
|
p2 - p11 is leader
|
|
p8 - p11 is leader
|
|
p5 - p2 is leader
|
|
p7 - p2 is leader
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p8 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p7 - prepare from p2
|
|
p8 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 4 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 5 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 6 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p4 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 sending all prepare 2 1
|
|
p3 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p2 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p2 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 2 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p3 - accept 2 1 {:val, 207}
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 207}
|
|
p1 accepted 2 1
|
|
p3 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p3 decided 2 {:val, 207}
|
|
p2 decided 2 {:val, 207}
|
|
p1 accepted 2 1
|
|
p1 decided 1 {:val, 205}
|
|
p1 decided 2 {:val, 207}
|
|
p2: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 sending all prepare 2 1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 - prepare from p1
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 205}
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p3 decided 2 {:val, 205}
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 205}
|
|
p1 decided 1 {:val, 207}
|
|
p1 decided 2 {:val, 205}
|
|
p2: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 - prepare from p1
|
|
p3 - accept 1 1 {:val, 203}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 205}
|
|
p2 decided 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p3 decided 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 205}
|
|
p1 decided 1 {:val, 203}
|
|
p3 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p3: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 sending all prepare 2 1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 2 1 {:val, 203}
|
|
p2 - accept 2 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p3 decided 2 {:val, 203}
|
|
p2 decided 2 {:val, 203}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 sending all prepare 2 1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - prepared 2 1 nil nil
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p1 accepted 2 1
|
|
p1 decided 1 {:val, 207}
|
|
p3 decided 2 {:val, 205}
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p2: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p3 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - p1 is leader
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p3: decided {:val, 208}
|
|
p3 - p1 is leader
|
|
p2: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p2: decided {:val, 207}
|
|
p3 - p1 is leader
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p3 - p1 is leader
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p3: decided {:val, 208}
|
|
p3 - p1 is leader
|
|
p2: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p3 - p1 is leader
|
|
p2: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1: decided {:val, 202}
|
|
p3 - p1 is leader
|
|
p3: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
:p2: started
|
|
:p1: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p3: decided {:val, 208}
|
|
p3 - p1 is leader
|
|
p2: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p3 - p1 is leader
|
|
p3: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p3: decided {:val, 208}
|
|
p3 - p1 is leader
|
|
p1: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p3 - p1 is leader
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207]
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p5: started
|
|
:p4: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p4: started
|
|
:p3: started
|
|
:p5: started
|
|
:p1: started
|
|
:p2: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
:p5: started
|
|
:p4: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p4 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p4 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
:p5: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p5: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p4: started
|
|
:p5: started
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - prepare from p1
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p4: started
|
|
:p1: started
|
|
:p5: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
:p4: started
|
|
:p1: started
|
|
:p3: started
|
|
:p5: started
|
|
:p2: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
:p3: started
|
|
:p2: started
|
|
:p4: started
|
|
:p1: started
|
|
:p5: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3 - p1 is leader
|
|
p3: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p2 - p1 is leader
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
:p1: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p3 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p2 - p1 is leader
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p3 - p1 is leader
|
|
p2: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p3 - p1 is leader
|
|
p2: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
:p3: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p3 - p1 is leader
|
|
p1: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p3 - p1 is leader
|
|
p1: decided {:val, 206}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
:p2: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - p1 is leader
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3 - p1 is leader
|
|
p3: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3 - p1 is leader
|
|
p3: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p3 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p3 - p1 is leader
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2 - p1 is leader
|
|
p1: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p3 - p1 is leader
|
|
p2: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 sending all prepare 2 1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 2 1 {:val, 201}
|
|
p2 - accept 2 1 {:val, 201}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p3 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p1 accepted 2 1
|
|
p3 decided 2 {:val, 201}
|
|
p2 decided 2 {:val, 201}
|
|
p1 decided 1 {:val, 209}
|
|
p1 decided 2 {:val, 201}
|
|
p2: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 sending all prepare 2 1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p1 - prepared 2 1 nil nil
|
|
p3 - accept 2 1 {:val, 203}
|
|
p2 - accept 2 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p3 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 201}
|
|
p3 decided 2 {:val, 203}
|
|
p2 decided 2 {:val, 203}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 sending all prepare 2 1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 - prepare from p1
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p3 - accept 2 1 {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 2 1 {:val, 209}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 209}
|
|
p3 decided 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p2 decided 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p3 decided 2 {:val, 209}
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 209}
|
|
p1 decided 1 {:val, 201}
|
|
p1 decided 2 {:val, 209}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 sending all prepare 2 1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 2 1 {:val, 203}
|
|
p2 - accept 2 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 203}
|
|
p3 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 201}
|
|
p3 decided 2 {:val, 203}
|
|
p2 decided 2 {:val, 203}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 sending all prepare 2 1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 - prepared 2 1 nil nil
|
|
p3 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 2 1 {:val, 201}
|
|
p3 - accept 2 1 {:val, 201}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p2 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p2 decided 2 {:val, 201}
|
|
p3 decided 2 {:val, 201}
|
|
p1 decided 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 sending all prepare 2 1
|
|
p2 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 - prepare from p1
|
|
p2 - accept 1 1 {:val, 201}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p3 - accept 2 1 {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 2 1 {:val, 209}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 209}
|
|
p3 decided 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p2 decided 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p3 decided 2 {:val, 209}
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 209}
|
|
p1 decided 1 {:val, 201}
|
|
p1 decided 2 {:val, 209}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p3 - accept 2 1 {:val, 201}
|
|
p2 - accept 2 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - prepared 2 1 nil nil
|
|
p2 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 2 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 decided 1 {:val, 209}
|
|
p1 accepted 2 1
|
|
p3 decided 2 {:val, 201}
|
|
p2 decided 2 {:val, 201}
|
|
p1 decided 2 {:val, 201}
|
|
p2: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p2 - accept 2 1 {:val, 201}
|
|
p3 - accept 2 1 {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 201}
|
|
p2 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p3 decided 2 {:val, 201}
|
|
p1 decided 1 {:val, 203}
|
|
p2 decided 2 {:val, 201}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 sending all prepare 2 1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 - prepared 2 1 nil nil
|
|
p3 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - accept 2 1 {:val, 201}
|
|
p3 - accept 2 1 {:val, 201}
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 201}
|
|
p3 decided 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p2 decided 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 203}
|
|
p3 decided 2 {:val, 201}
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 201}
|
|
p1 decided 2 {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 sending all prepare 2 1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 - prepared 2 1 nil nil
|
|
p3 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 2 1 {:val, 201}
|
|
p3 - accept 2 1 {:val, 201}
|
|
p1 Try to run prepared
|
|
p1 3 3 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - accept 2 1 {:val, 201}
|
|
p1 accepted 2 1
|
|
p2 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p1 accepted 2 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 203}
|
|
p2 decided 2 {:val, 201}
|
|
p3 decided 2 {:val, 201}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p3: started
|
|
p5 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p1 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
:p2: started
|
|
p2 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 2 1 {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p5 - accept 2 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p4 - accept 2 1 {:val, 206}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p5 decided 2 {:val, 206}
|
|
p4 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p2: started
|
|
p2 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p5 - Propose 2 with action nil
|
|
:p1: started
|
|
p1 - Propose 2 with action nil
|
|
:p4: started
|
|
p4 - Propose 2 with action nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p5 - accept 2 1 {:val, 206}
|
|
p2 - accept 2 1 {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - prepared 2 1 nil nil
|
|
p4 - accept 2 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p4 - p1 is leader
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p5 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p4 decided 2 {:val, 206}
|
|
p2 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p2 - p1 is leader
|
|
p1 decided 2 {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p5: started
|
|
p3 - Propose 2 with action nil
|
|
:p2: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p1: started
|
|
p2 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p5 - accept 2 1 {:val, 206}
|
|
p2 - accept 2 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - prepared 2 1 nil nil
|
|
p4 - accept 2 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 206}
|
|
p5 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p4 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p4 - Propose 2 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 2 with action nil
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p4 - p1 is leader
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p5 - accept 2 1 {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p4 - accept 2 1 {:val, 206}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 2 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - p1 is leader
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p4 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p5 decided 2 {:val, 206}
|
|
p2 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p3: started
|
|
p3 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 2 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p2 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 - Propose 2 with action nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - p1 is leader
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p5 - accept 2 1 {:val, 206}
|
|
p2 - accept 2 1 {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p4 - accept 2 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - p1 is leader
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p3 decided 2 {:val, 206}
|
|
p4 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p5 decided 2 {:val, 206}
|
|
p2 decided 2 {:val, 206}
|
|
p1 decided 2 {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p3: started
|
|
p3 - Propose 2 with action nil
|
|
:p5: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p2: started
|
|
p4 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 - Propose 2 with action nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 2 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p4 - accept 2 1 {:val, 206}
|
|
p5 - accept 2 1 {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p3 - p1 is leader
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p5 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p4 decided 2 {:val, 206}
|
|
p2 decided 2 {:val, 206}
|
|
p1 decided 2 {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p2: started
|
|
p2 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 2 with action nil
|
|
:p1: started
|
|
p1 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 - Propose 2 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p4 - Propose 2 with action nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p5 - accept 2 1 {:val, 206}
|
|
p4 - accept 2 1 {:val, 206}
|
|
p2 - accept 2 1 {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p2 - p1 is leader
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 206}
|
|
p4 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p5 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p4: started
|
|
p5 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 2 with action nil
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 2 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 2 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 2 1 {:val, 206}
|
|
p4 - accept 2 1 {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p5 - accept 2 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p5 decided 2 {:val, 206}
|
|
p4 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p4: started
|
|
p4 - Propose 2 with action nil
|
|
:p3: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p3 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p5 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p4 - accept 2 1 {:val, 206}
|
|
p5 - accept 2 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 2 1 {:val, 206}
|
|
p2 - accept 2 1 {:val, 206}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 206}
|
|
p4 decided 2 {:val, 206}
|
|
p5 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
p3 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p5 - Propose 2 with action nil
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p4 - accept 2 1 {:val, 206}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 2 1 {:val, 206}
|
|
p5 - accept 2 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p3 - accept 2 1 {:val, 206}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p4 decided 2 {:val, 206}
|
|
p3 decided 2 {:val, 206}
|
|
p5 decided 2 {:val, 206}
|
|
p2 decided 2 {:val, 206}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p5 - p1 is leader
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
:p5: started
|
|
:p2: started
|
|
:p3: started
|
|
:p4: started
|
|
:p1: started
|
|
p5 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p4 - accept 2 1 {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 205}
|
|
p5 decided 2 {:val, 205}
|
|
p3 decided 2 {:val, 205}
|
|
p4 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
:p2: started
|
|
:p5: started
|
|
p3 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p4 - accept 2 1 {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p3 decided 2 {:val, 205}
|
|
p1 accepted 2 1
|
|
p4 decided 2 {:val, 205}
|
|
p2 decided 2 {:val, 205}
|
|
p5 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
:p5: started
|
|
p4 - Propose 2 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p4 - accept 2 1 {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p4 decided 2 {:val, 205}
|
|
p2 decided 2 {:val, 205}
|
|
p3 decided 2 {:val, 205}
|
|
p1 accepted 2 1
|
|
p5 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
:p2: started
|
|
:p5: started
|
|
p1 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p4 - accept 2 1 {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p4 decided 2 {:val, 205}
|
|
p5 decided 2 {:val, 205}
|
|
p2 decided 2 {:val, 205}
|
|
p3 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
:p4: started
|
|
:p5: started
|
|
p3 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p3 - accept 2 1 {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p4 - accept 2 1 {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 205}
|
|
p3 decided 2 {:val, 205}
|
|
p5 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p4 decided 2 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
:p5: started
|
|
:p4: started
|
|
p3 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 2 1 {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p4 - accept 2 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p3 decided 2 {:val, 205}
|
|
p1 accepted 2 1
|
|
p2 decided 2 {:val, 205}
|
|
p5 decided 2 {:val, 205}
|
|
p4 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
:p4: started
|
|
:p5: started
|
|
p2 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p3 - accept 2 1 {:val, 205}
|
|
p4 - accept 2 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p3 decided 2 {:val, 205}
|
|
p2 decided 2 {:val, 205}
|
|
p4 decided 2 {:val, 205}
|
|
p5 decided 2 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p5: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
:p2: started
|
|
p5 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p4 - accept 2 1 {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p3 - accept 2 1 {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p4 decided 2 {:val, 205}
|
|
p5 decided 2 {:val, 205}
|
|
p2 decided 2 {:val, 205}
|
|
p3 decided 2 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 decided 2 {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
p5 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p1 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - p1 is leader
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p5 - accept 2 1 {:val, 205}
|
|
p2 - accept 2 1 {:val, 205}
|
|
p4 - accept 2 1 {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p5 decided 2 {:val, 205}
|
|
p3 decided 2 {:val, 205}
|
|
p2 decided 2 {:val, 205}
|
|
p4 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
:p5: started
|
|
p1 - Propose 2 with action nil
|
|
p2 - Propose 2 with action nil
|
|
p4 - Propose 2 with action nil
|
|
p3 - Propose 2 with action nil
|
|
p5 - Propose 2 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 2 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 2 1 nil nil
|
|
p2 - accept 2 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p4 - accept 2 1 {:val, 205}
|
|
p5 - accept 2 1 {:val, 205}
|
|
p3 - accept 2 1 {:val, 205}
|
|
p1 5 4 true
|
|
p1 - prepared 2 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 2 1 {:val, 205}
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p1 accepted 2 1
|
|
p3 decided 2 {:val, 205}
|
|
p2 decided 2 {:val, 205}
|
|
p4 decided 2 {:val, 205}
|
|
p5 decided 2 {:val, 205}
|
|
p1 decided 2 {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p5: started
|
|
:p3: started
|
|
:p4: started
|
|
:p2: started
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p2 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p3 - p1 is leader
|
|
p5 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p5 - p1 is leader
|
|
p3: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
:p5: started
|
|
:p2: started
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - p1 is leader
|
|
p1 5 3 false
|
|
p2 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - p1 is leader
|
|
p1: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p5: started
|
|
:p4: started
|
|
:p2: started
|
|
:p1: started
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - p1 is leader
|
|
p3: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
p4 - Propose 1 with action nil
|
|
:p3: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p4 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p4 - p1 is leader
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - p1 is leader
|
|
p1: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p5: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p4 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - p1 is leader
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
:p1: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p3 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - p1 is leader
|
|
p3: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p4: started
|
|
:p3: started
|
|
:p2: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p3 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p5 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - p1 is leader
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - p1 is leader
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p5 - p1 is leader
|
|
p2: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p3: started
|
|
:p4: started
|
|
p2 - Propose 1 with action nil
|
|
:p5: started
|
|
p3 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p2 - p1 is leader
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - p1 is leader
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p5: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - p1 is leader
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p3 decided 1 {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - p1 is leader
|
|
p1 accepted 1 1
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - p1 is leader
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p5 - p1 is leader
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p5: started
|
|
:p4: started
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p5: started
|
|
:p4: started
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p4: started
|
|
:p2: started
|
|
:p5: started
|
|
:p1: started
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
:p5: started
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
:p2: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 5 5 true
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
:p1: started
|
|
:p3: started
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p2: started
|
|
:p4: started
|
|
:p1: started
|
|
:p5: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
:p5: started
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
:p3: started
|
|
:p1: started
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 5 4 true
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
:p4: started
|
|
:p5: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p3 - p1 is leader
|
|
p1: decided {:val, 207}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 207, val: 207]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 2 false
|
|
p3 - accept 1 1 {:val, 209}
|
|
p2 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p3 - p2 is leader
|
|
p3: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 2 false
|
|
p2 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p3 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 2 false
|
|
p2 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p3 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p3 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p3 - p2 is leader
|
|
p3: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 2 false
|
|
p3 - accept 1 1 {:val, 207}
|
|
p2 SET BALLOT VALUE {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p3 - p2 is leader
|
|
p2: decided {:val, 207}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
:p3: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p3: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 209}
|
|
p2 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 2 false
|
|
p2 SET BALLOT VALUE {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 204}
|
|
p1 decided 1 {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 204, val: 204]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 202, val: 202]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 202, val: 202]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 3 2 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 2 false
|
|
p2 SET BALLOT VALUE {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 209, val: 209]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 2 false
|
|
p2 SET BALLOT VALUE {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p3 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 204, val: 204]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 3 2 false
|
|
p2 SET BALLOT VALUE {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p3 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 204, val: 204]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
:p4: started
|
|
:p3: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p3: started
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - p1 is leader
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202]
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p3: started
|
|
:p5: started
|
|
:p4: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p4 - p3 is leader
|
|
p3 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p3
|
|
p5 - prepare from p3
|
|
p3 - prepare from p3
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 5 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 5 2 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 5 3 false
|
|
p3 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p3 accepted 1 1
|
|
p4 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5 - p3 is leader
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
:p3: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p2 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p2 accepted 1 1
|
|
p5 - accept 1 1 {:val, 202}
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 202}
|
|
p3 - p2 is leader
|
|
p5 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p5 - p2 is leader
|
|
p5: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p5: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p4 - p3 is leader
|
|
p3 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p3
|
|
p4 - prepare from p3
|
|
p3 - prepare from p3
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 5 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 5 2 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 5 3 false
|
|
p3 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p3 accepted 1 1
|
|
p5 - accept 1 1 {:val, 210}
|
|
p3 accepted 1 1
|
|
p4 - accept 1 1 {:val, 210}
|
|
p3 accepted 1 1
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5 - p3 is leader
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p1: started
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5 - p1 is leader
|
|
p5: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p3: started
|
|
:p1: started
|
|
:p5: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p5 - p1 is leader
|
|
p4: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p4: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
:p5: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p2 - p1 is leader
|
|
p1: decided {:val, 208}
|
|
p5 - p1 is leader
|
|
p5: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p4: started
|
|
:p5: started
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
:p1: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - p1 is leader
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5 - p1 is leader
|
|
p5: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
:p1: started
|
|
:p5: started
|
|
:p3: started
|
|
:p2: started
|
|
:p4: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
:p2: started
|
|
:p1: started
|
|
:p4: started
|
|
:p5: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p5 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208]
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
:p3: started
|
|
:p5: started
|
|
:p4: started
|
|
:p1: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
:p1: started
|
|
:p3: started
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206]
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p5: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
:p2: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
:p5: started
|
|
:p4: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p5 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p4: started
|
|
:p2: started
|
|
:p5: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p4: started
|
|
:p5: started
|
|
:p3: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - p1 is leader
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p3 - accept 1 1 {:val, 208}
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p5 - p1 is leader
|
|
p1: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p2: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p1 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p1: started
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 202}
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p2: decided {:val, 202}
|
|
p5 - p1 is leader
|
|
p5: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p4: started
|
|
:p1: started
|
|
:p2: started
|
|
:p5: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 209}
|
|
p4 - accept 1 1 {:val, 209}
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p5 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p5 - p1 is leader
|
|
p4: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
:p5: started
|
|
p1 - Propose 1 with action nil
|
|
:p4: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p2
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p4 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p3 - p2 is leader
|
|
p2 5 4 true
|
|
p2 - accept 1 1 {:val, 208}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p4 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p4 - p2 is leader
|
|
p3: decided {:val, 208}
|
|
p5 - p2 is leader
|
|
p2: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p4 - accept 1 1 {:val, 209}
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p5 - accept 1 1 {:val, 209}
|
|
p1 5 4 true
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p4: decided {:val, 209}
|
|
p5 - p1 is leader
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
:p2: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p3 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p5 - p1 is leader
|
|
p5: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p4: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 1 1 {:val, 202}
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p5 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p5 - p1 is leader
|
|
p1: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p4: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
:p3: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p3 - p2 is leader
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p4 - accept 1 1 {:val, 209}
|
|
p2 SET BALLOT VALUE {:val, 209}
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p3 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p4: decided {:val, 209}
|
|
p5 - p2 is leader
|
|
p5: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p3: started
|
|
:p4: started
|
|
:p2: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 202}
|
|
p2 - prepared 1 1 nil nil
|
|
p1 - accept 1 1 {:val, 202}
|
|
p2 Try to run prepared
|
|
p3 - accept 1 1 {:val, 202}
|
|
p2 5 4 true
|
|
p5 - accept 1 1 {:val, 202}
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 5 true
|
|
p4 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p5 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p2 accepted 1 1
|
|
p3 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
:p4: started
|
|
:p5: started
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p1 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p1: started
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p5 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p2 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 1 {:val, 203}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p5 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
:p1: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
:p4: started
|
|
:p5: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
:p5: started
|
|
:p3: started
|
|
:p4: started
|
|
:p2: started
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p4: started
|
|
:p5: started
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p2: started
|
|
:p4: started
|
|
:p5: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p5 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p2 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 202}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 1 {:val, 202}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p4 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
:p2: started
|
|
:p5: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p1: decided {:val, 205}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
:p5: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
:p3: started
|
|
:p7: started
|
|
:p4: started
|
|
:p1: started
|
|
:p5: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p6: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p5 - p1 is leader
|
|
p1 7 4 false
|
|
p3 - accept 1 1 {:val, 208}
|
|
p3 - p1 is leader
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p6: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
:p5: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p7: started
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
:p6: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
:p4: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p6 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 4 false
|
|
p4 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 5 true
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p7 - p1 is leader
|
|
p7: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
:p7: started
|
|
:p2: started
|
|
:p3: started
|
|
:p4: started
|
|
p7 - Propose 1 with action nil
|
|
:p5: started
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p6: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p7 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p5 - p2 is leader
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p3 - p2 is leader
|
|
p2 7 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 4 false
|
|
p2 SET BALLOT VALUE {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p2 accepted 1 1
|
|
p3 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p7 - p2 is leader
|
|
p3: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
:p1: started
|
|
:p4: started
|
|
:p5: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
:p7: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p6: started
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p3 - prepare from p2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
I think that is the cause
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 4 false
|
|
p3 - accept 1 1 {:val, 208}
|
|
p2 SET BALLOT VALUE {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p5 - accept 1 1 {:val, 208}
|
|
p2 accepted 1 1
|
|
p4 - accept 1 1 {:val, 208}
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
:p3: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p7: started
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
:p6: started
|
|
:p1: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p7 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p5 - p2 is leader
|
|
p2 7 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 4 false
|
|
p2 SET BALLOT VALUE {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p2 accepted 1 1
|
|
p3 - accept 1 1 {:val, 204}
|
|
p2 accepted 1 1
|
|
p5 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p3 - p2 is leader
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p7 - p2 is leader
|
|
p2: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
:p4: started
|
|
:p1: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
:p6: started
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p7: started
|
|
p2 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
:p3: started
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p2 is leader
|
|
p6 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p6 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 4 false
|
|
p6 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p2 SET BALLOT VALUE {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p4 - accept 1 1 {:val, 209}
|
|
p2 accepted 1 1
|
|
p4 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
:p4: started
|
|
:p1: started
|
|
:p2: started
|
|
:p3: started
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p7: started
|
|
:p5: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p6: started
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p7 - p1 is leader
|
|
p3 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p3
|
|
p5 - prepare from p3
|
|
p7 - prepare from p3
|
|
p3 - prepare from p3
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 2 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 3 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 4 false
|
|
p3 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p3 accepted 1 1
|
|
p4 - accept 1 1 {:val, 210}
|
|
p4 - p3 is leader
|
|
p3 accepted 1 1
|
|
p5 - accept 1 1 {:val, 210}
|
|
p3 accepted 1 1
|
|
p7 - accept 1 1 {:val, 210}
|
|
p5 - p3 is leader
|
|
p3 accepted 1 1
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p7 - p3 is leader
|
|
p3: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
:p1: started
|
|
:p7: started
|
|
:p2: started
|
|
:p3: started
|
|
:p5: started
|
|
:p4: started
|
|
:p6: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 4 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p6 - accept 1 1 {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p4 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 203}
|
|
p2 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
:p7: started
|
|
:p4: started
|
|
:p2: started
|
|
:p1: started
|
|
:p6: started
|
|
:p5: started
|
|
:p3: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p7 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p3 - p2 is leader
|
|
p2 7 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 4 false
|
|
p6 - accept 1 1 {:val, 203}
|
|
p6 - p2 is leader
|
|
p2 SET BALLOT VALUE {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p7 - p2 is leader
|
|
p7: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
:p4: started
|
|
:p1: started
|
|
:p6: started
|
|
:p2: started
|
|
:p5: started
|
|
:p7: started
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 4 false
|
|
p6 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
:p5: started
|
|
:p1: started
|
|
:p7: started
|
|
:p6: started
|
|
:p2: started
|
|
:p3: started
|
|
:p4: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p6 - p2 is leader
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 4 false
|
|
p2 SET BALLOT VALUE {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p6 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
:p6: started
|
|
:p3: started
|
|
:p2: started
|
|
:p1: started
|
|
:p7: started
|
|
:p5: started
|
|
:p4: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p6 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 4 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p5: started
|
|
:p6: started
|
|
:p2: started
|
|
:p7: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 4 false
|
|
p1 SET BALLOT VALUE {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p1 - accept 1 1 {:val, 201}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p1 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p1: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
:p7: started
|
|
:p6: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
:p5: started
|
|
:p1: started
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 4 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p6: started
|
|
:p7: started
|
|
:p5: started
|
|
:p1: started
|
|
:p4: started
|
|
:p3: started
|
|
:p2: started
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 4 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p4 - accept 1 1 {:val, 203}
|
|
p3 - accept 1 1 {:val, 203}
|
|
p2 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 203}
|
|
p4 decided 1 {:val, 203}
|
|
p3 decided 1 {:val, 203}
|
|
p2 decided 1 {:val, 203}
|
|
p4: decided {:val, 203}
|
|
p3: decided {:val, 203}
|
|
p2: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p1: started
|
|
:p7: started
|
|
:p4: started
|
|
:p2: started
|
|
:p6: started
|
|
:p5: started
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p6 - p2 is leader
|
|
p7 - p2 is leader
|
|
p2 - p2 is leader
|
|
p5 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p7 - prepare from p2
|
|
p6 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 4 false
|
|
p2 SET BALLOT VALUE {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p7 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
:p7: started
|
|
:p6: started
|
|
:p4: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - p2 is leader
|
|
p6 - p2 is leader
|
|
p4 - p2 is leader
|
|
p5 - p2 is leader
|
|
p6 - p3 is leader
|
|
p3 - p3 is leader
|
|
p4 - p3 is leader
|
|
p5 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p3
|
|
p6 - prepare from p3
|
|
p5 - prepare from p3
|
|
p3 - prepare from p3
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 2 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 3 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 4 false
|
|
p3 SET BALLOT VALUE {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p3 accepted 1 1
|
|
p4 - accept 1 1 {:val, 208}
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
:p2: started
|
|
:p4: started
|
|
:p7: started
|
|
:p6: started
|
|
:p3: started
|
|
:p5: started
|
|
:p1: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p6 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 7 4 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
:p1: started
|
|
:p7: started
|
|
:p2: started
|
|
:p6: started
|
|
:p3: started
|
|
:p5: started
|
|
:p4: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p3 is leader
|
|
p5 - p3 is leader
|
|
p6 - p3 is leader
|
|
p3 sending all prepare 1 1
|
|
p3 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p3
|
|
p5 - prepare from p3
|
|
p3 - prepare from p3
|
|
p4 - prepare from p3
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 1 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 2 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 3 false
|
|
p3 - prepared 1 1 nil nil
|
|
p3 Try to run prepared
|
|
p3 7 4 false
|
|
p3 SET BALLOT VALUE {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p3 accepted 1 1
|
|
p4 - p3 is leader
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p3 accepted 1 1
|
|
p6 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p7: started
|
|
:p6: started
|
|
:p1: started
|
|
:p5: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 7 4 false
|
|
p2 SET BALLOT VALUE {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p5 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p10: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
:p9: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
:p1: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
:p4: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
:p2: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
:p5: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
:p6: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
:p11: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
:p3: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p5, :p11, :p2, :p7, :p1, :p8, :p10, :p3, :p4, :p9, :p6]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p8 - p10 is leader
|
|
p4 - p10 is leader
|
|
p9 - p10 is leader
|
|
p10 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p10
|
|
p6 - prepare from p10
|
|
p4 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - prepare from p10
|
|
p6 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 208}
|
|
p10 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p8 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p6 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p10: decided {:val, 208}
|
|
p4: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p6: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
:p7: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
:p11: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
:p1: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
:p2: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
:p3: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
p2 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
:p9: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
:p10: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p5, :p2, :p7, :p10, :p8, :p1, :p11, :p6, :p4, :p3, :p9]
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p11 - prepare from p1
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p9 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 206}
|
|
p11 - accept 1 1 {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p3 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p4 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p6: decided {:val, 206}
|
|
p11: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p11 - p1 is leader
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
:p6: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
:p10: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
:p8: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
:p5: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
:p1: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
:p7: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
p5 - Propose 1 with action nil
|
|
:p9: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
:p4: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
:p2: started with [:p5, :p1, :p6, :p8, :p7, :p3, :p11, :p4, :p2, :p10, :p9]
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p3 - accept 1 1 {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - accept 1 1 {:val, 206}
|
|
p11 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p9 - accept 1 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p2 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p10 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 206}
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p9 - p1 is leader
|
|
p3: decided {:val, 206}
|
|
p11 - p1 is leader
|
|
p10: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p11: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p5: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
:p6: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p1: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p7: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p4: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
:p10: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
:p11: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
p4 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
:p2: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
:p9: started with [:p10, :p6, :p9, :p7, :p1, :p4, :p11, :p2, :p5, :p8, :p3]
|
|
p8 - p10 is leader
|
|
p4 - p10 is leader
|
|
p5 - p10 is leader
|
|
p2 - p10 is leader
|
|
p3 - p10 is leader
|
|
p11 - p10 is leader
|
|
p8 - p11 is leader
|
|
p4 - p11 is leader
|
|
p5 - p11 is leader
|
|
p2 - p11 is leader
|
|
p3 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p11
|
|
p4 - prepare from p11
|
|
p5 - prepare from p11
|
|
p3 - prepare from p11
|
|
p8 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p4 - accept 1 1 {:val, 201}
|
|
p11 SET BALLOT VALUE {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p2 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p8 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
:p5: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p10: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p1: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p3: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p6: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p7: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p2: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p4: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p11: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
:p8: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
p4 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p4, :p9, :p11, :p10, :p3, :p2, :p8, :p6, :p7, :p1, :p5]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p2 - prepare from p1
|
|
p6 - prepare from p1
|
|
p8 - prepare from p1
|
|
p5 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p8 - accept 1 1 {:val, 208}
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p1: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
:p8: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
:p4: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
:p6: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
:p10: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
:p7: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
p11 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p3: started with [:p11, :p3, :p9, :p1, :p4, :p6, :p7, :p2, :p10, :p5, :p8]
|
|
p3 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p8 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p11 - p10 is leader
|
|
p2 - p10 is leader
|
|
p8 - p10 is leader
|
|
p5 - p10 is leader
|
|
p6 - p10 is leader
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p6 - prepare from p10
|
|
p7 - prepare from p10
|
|
p8 - prepare from p10
|
|
p2 - prepare from p10
|
|
p10 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p5 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p7 - accept 1 1 {:val, 210}
|
|
p10 accepted 1 1
|
|
p7 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p11: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
:p5: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
:p8: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
:p3: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
:p10: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
:p6: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
:p2: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
:p7: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
:p4: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
:p9: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
:p1: started with [:p2, :p4, :p11, :p5, :p7, :p6, :p10, :p8, :p9, :p3, :p1]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p9 - prepare from p1
|
|
p8 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - p1 is leader
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p10 - accept 1 1 {:val, 202}
|
|
p10 - p1 is leader
|
|
p1 accepted 1 1
|
|
p9 - accept 1 1 {:val, 202}
|
|
p9 - p1 is leader
|
|
p6 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p6: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p10: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p11: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
:p8: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
:p10: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
:p4: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
:p2: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
:p7: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
:p3: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
p7 - Propose 1 with action nil
|
|
:p9: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
:p6: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
:p1: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p5, :p7, :p2, :p10, :p6, :p3, :p11, :p4, :p9, :p8, :p1]
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p8 - prepare from p1
|
|
p3 - prepare from p1
|
|
p7 - prepare from p1
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p8 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p9 - accept 1 1 {:val, 210}
|
|
p1 11 8 true
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p9 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p11 - p1 is leader
|
|
p11: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p8: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p9: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
:p1: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
:p10: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
p1 - Propose 1 with action nil
|
|
:p4: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p5: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
p9 - Propose 1 with action nil
|
|
:p7: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
:p2: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
:p3: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
:p6: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p8: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p11: started with [:p1, :p9, :p4, :p11, :p8, :p7, :p3, :p6, :p5, :p10, :p2]
|
|
p7 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p2 - p1 is leader
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p6 - p10 is leader
|
|
p5 - p10 is leader
|
|
p7 - p10 is leader
|
|
p2 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p10
|
|
p7 - prepare from p10
|
|
p2 - prepare from p10
|
|
p5 - prepare from p10
|
|
p6 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p3 - p10 is leader
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p5 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p5 decided 1 {:val, 201}
|
|
p3 decided 1 {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p5: decided {:val, 201}
|
|
p5: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
:p7: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p10: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p11: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p8: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p6: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p5: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p1: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p2: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p3: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
:p4: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
p5 - Propose 1 with action nil
|
|
:p9: started with [:p5, :p3, :p1, :p9, :p6, :p4, :p2, :p11, :p8, :p7, :p10]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - p10 is leader
|
|
p2 - p10 is leader
|
|
p8 - p10 is leader
|
|
p7 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p10
|
|
p8 - prepare from p10
|
|
p7 - prepare from p10
|
|
p11 - prepare from p10
|
|
p4 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p4 - accept 1 1 {:val, 201}
|
|
p7 - accept 1 1 {:val, 201}
|
|
p10 SET BALLOT VALUE {:val, 201}
|
|
p2 - accept 1 1 {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p10 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p8 - accept 1 1 {:val, 201}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p11 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p8 decided 1 {:val, 201}
|
|
p10 decided 1 {:val, 201}
|
|
p7 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p7: decided {:val, 201}
|
|
p10: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p8: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p2: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
:p7: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p11: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p10: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p2: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p8: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p1: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p3: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p5: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p6: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p9: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
:p4: started with [:p7, :p11, :p10, :p2, :p8, :p3, :p1, :p5, :p6, :p9, :p4]
|
|
p7 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p5 - p1 is leader
|
|
p9 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p6 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p6 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
:p8: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p11: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p4: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p1: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p9: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p5: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p2: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p7: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p6: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p10: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
:p3: started with [:p8, :p11, :p4, :p1, :p9, :p2, :p5, :p7, :p6, :p10, :p3]
|
|
p8 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 - p10 is leader
|
|
p7 - p10 is leader
|
|
p5 - p10 is leader
|
|
p6 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p10
|
|
p5 - prepare from p10
|
|
p7 - prepare from p10
|
|
p6 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p10 - accept 1 1 {:val, 208}
|
|
p6 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p2 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p6 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p6: decided {:val, 208}
|
|
p10: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p11
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
:p11: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p5: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p7: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p1: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p10: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p2: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p6: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p8: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p4: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p3: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
:p9: started with [:p11, :p7, :p10, :p6, :p8, :p5, :p1, :p4, :p2, :p3, :p9]
|
|
p11 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
:p4: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p2: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p10: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p3: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p6: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p9: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p7: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p1: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p8: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p5: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
:p11: started with [:p4, :p3, :p6, :p2, :p10, :p7, :p8, :p5, :p11, :p9, :p1]
|
|
p4 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p8 - p1 is leader
|
|
p7 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p8 - prepare from p1
|
|
p9 - prepare from p1
|
|
p7 - prepare from p1
|
|
p1 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p11 - accept 1 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p7 decided 1 {:val, 208}
|
|
p1 decided 1 {:val, 208}
|
|
p11 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p11: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p6
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
:p8: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p2: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p3: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p1: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p6: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p10: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p11: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p5: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p9: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p7: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
:p4: started with [:p8, :p2, :p3, :p1, :p6, :p10, :p5, :p11, :p9, :p4, :p7]
|
|
p8 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p5 - p10 is leader
|
|
p11 - p10 is leader
|
|
p10 - p10 is leader
|
|
p9 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p10
|
|
p10 - prepare from p10
|
|
p5 - prepare from p10
|
|
p11 - prepare from p10
|
|
p9 - prepare from p10
|
|
p7 - prepare from p10
|
|
p4 - p10 is leader
|
|
p10 - prepared 1 1 nil nil
|
|
p7 - p10 is leader
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 209}
|
|
p10 - accept 1 1 {:val, 209}
|
|
p7 - accept 1 1 {:val, 209}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p5 - accept 1 1 {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p4 - accept 1 1 {:val, 209}
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 209}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 209}
|
|
p5 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p9 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p10: decided {:val, 209}
|
|
p10: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p11
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
:p11: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p8: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p3: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p10: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p4: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p9: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p1: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p5: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p7: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p2: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
:p6: started with [:p11, :p8, :p10, :p3, :p9, :p4, :p5, :p1, :p7, :p2, :p6]
|
|
p11 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p6 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p7 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 204}
|
|
p1 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p4 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p6 - accept 1 1 {:val, 204}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p2 decided 1 {:val, 204}
|
|
p6 decided 1 {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p6: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p1: decided {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p7: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p6: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p8: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p11: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p10: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p1: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p4: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p9: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p3: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p2: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
:p5: started with [:p6, :p8, :p11, :p10, :p1, :p4, :p3, :p9, :p7, :p2, :p5]
|
|
p6 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p9 - p2 is leader
|
|
p2 - p2 is leader
|
|
p7 - p2 is leader
|
|
p5 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p7 - prepare from p2
|
|
p2 - prepare from p2
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p9 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 4 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 5 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 6 false
|
|
p2 SET BALLOT VALUE {:val, 204}
|
|
p2 - accept 1 1 {:val, 204}
|
|
p4 - accept 1 1 {:val, 204}
|
|
p3 - accept 1 1 {:val, 204}
|
|
p9 - accept 1 1 {:val, 204}
|
|
p7 - accept 1 1 {:val, 204}
|
|
p5 - accept 1 1 {:val, 204}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 decided 1 {:val, 204}
|
|
p4 decided 1 {:val, 204}
|
|
p3 decided 1 {:val, 204}
|
|
p9 decided 1 {:val, 204}
|
|
p7 decided 1 {:val, 204}
|
|
p5 decided 1 {:val, 204}
|
|
p5: decided {:val, 204}
|
|
p7: decided {:val, 204}
|
|
p9: decided {:val, 204}
|
|
p3: decided {:val, 204}
|
|
p2: decided {:val, 204}
|
|
p4: decided {:val, 204}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 204, val: 204, val: 204, val: 204, val: 204, val: 204]
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
:p2: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p8: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p6: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p7: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p1: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p5: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p10: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p11: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p3: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p9: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
:p4: started with [:p2, :p6, :p1, :p8, :p5, :p7, :p11, :p3, :p10, :p9, :p4]
|
|
p2 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
p11 - p10 is leader
|
|
p7 - p10 is leader
|
|
p3 - p10 is leader
|
|
p4 - p10 is leader
|
|
p9 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p10
|
|
p7 - prepare from p10
|
|
p4 - prepare from p10
|
|
p11 - prepare from p10
|
|
p10 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p11 - accept 1 1 {:val, 208}
|
|
p10 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p11 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p11: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p10: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p10: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
:p3: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p9: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p11: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p1: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p10: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p8: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p6: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p5: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p7: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p4: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
:p2: started with [:p3, :p11, :p9, :p10, :p8, :p1, :p5, :p7, :p4, :p2, :p6]
|
|
p3 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p6 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
:p3: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p11: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p2: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p8: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p7: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p9: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p4: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p1: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p10: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p5: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
:p6: started with [:p3, :p8, :p2, :p7, :p9, :p11, :p4, :p10, :p1, :p5, :p6]
|
|
p3 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p6 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p1 - accept 1 1 {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p11 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p10 decided 1 {:val, 202}
|
|
p1 decided 1 {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p1: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p4: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p5: started
|
|
:p11: started
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
:p6: started
|
|
p5 - Propose 1 with action nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p1: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p8 SET BALLOT VALUE 3 nil
|
|
:p8: started
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
:p10: started
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p7: started
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
:p9: started
|
|
p8 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
p7 - Propose 1 with action nil
|
|
spare = [:p3, :p4, :p1, :p2, :p9, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p11, :p10]
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p8 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p7 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p7 - accept 1 1 {:val, 207}
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p3 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p2 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p8: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p5: started
|
|
:p9: started
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
:p8: started
|
|
:p10: started
|
|
:p11: started
|
|
:p2: started
|
|
:p6: started
|
|
:p7: started
|
|
:p1: started
|
|
:p4: started
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
:p3: started
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
p7 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p1, :p11, :p5, :p10, :p7]
|
|
kill: leaders, followers = [:p2, :p6], [:p9, :p4, :p8]
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p2 - p1 is leader
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p5 - prepare from p1
|
|
p7 - prepare from p1
|
|
p2 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - p1 is leader
|
|
p10 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p7 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p6 - accept 1 1 {:val, 206}
|
|
p1 SET BALLOT VALUE {:val, 206}
|
|
p3 - accept 1 1 {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - p1 is leader
|
|
p10 - accept 1 1 {:val, 206}
|
|
p1 11 7 true
|
|
p5 - accept 1 1 {:val, 206}
|
|
p1 - prepared 1 1 nil nil
|
|
p11 - accept 1 1 {:val, 206}
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 206}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 206}
|
|
p7 decided 1 {:val, 206}
|
|
p1 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p10 decided 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p7 - Propose 1 with action nil
|
|
p7 - Has already decided for 1 sending {:val, 206}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 206}
|
|
p7: decided {:val, 206}
|
|
p3: decided {:val, 206}
|
|
p11 - p1 is leader
|
|
p5: decided {:val, 206}
|
|
p1: decided {:val, 206}
|
|
p11: decided {:val, 206}
|
|
p10: decided {:val, 206}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p5
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p4: started
|
|
:p8: started
|
|
:p5: started
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
:p2: started
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
:p7: started
|
|
:p3: started
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
:p9: started
|
|
:p11: started
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
p5 - Propose 1 with action nil
|
|
:p10: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
:p6: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
spare = [:p3, :p4, :p9, :p10, :p2, :p5]
|
|
kill: leaders, followers = [:p8, :p6], [:p11, :p1, :p7]
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p9 - p10 is leader
|
|
p2 - p10 is leader
|
|
p3 - p10 is leader
|
|
p10 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p10
|
|
p2 - prepare from p10
|
|
p4 - prepare from p10
|
|
p3 - prepare from p10
|
|
p9 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 206}
|
|
p5 - accept 1 1 {:val, 206}
|
|
p10 - accept 1 1 {:val, 206}
|
|
p2 - accept 1 1 {:val, 206}
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 206}
|
|
p10 accepted 1 1
|
|
p4 - accept 1 1 {:val, 206}
|
|
p10 accepted 1 1
|
|
p4 - p10 is leader
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p9 - accept 1 1 {:val, 206}
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 206}
|
|
p3 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p4 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p3 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - p10 is leader
|
|
p3: decided {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p10: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p3: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p8: started
|
|
:p11: started
|
|
:p1: started
|
|
:p6: started
|
|
:p5: started
|
|
:p3: started
|
|
:p4: started
|
|
:p9: started
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
:p2: started
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
:p10: started
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
p1 - Propose 1 with action nil
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
spare = [:p4, :p11, :p6, :p8, :p3, :p9]
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p1, :p10], [:p2, :p7, :p5]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p6 - p1 is leader
|
|
p3 - p1 is leader
|
|
p11 - p1 is leader
|
|
p4 - p11 is leader
|
|
p9 - p11 is leader
|
|
p8 - p11 is leader
|
|
p6 - p11 is leader
|
|
p3 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p11
|
|
p11 - prepare from p11
|
|
p8 - prepare from p11
|
|
p6 - prepare from p11
|
|
p9 - prepare from p11
|
|
p4 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p4 - accept 1 1 {:val, 210}
|
|
p11 SET BALLOT VALUE {:val, 210}
|
|
p9 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p11 accepted 1 1
|
|
p3 - accept 1 1 {:val, 210}
|
|
p11 accepted 1 1
|
|
p6 - accept 1 1 {:val, 210}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p4 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p9 decided 1 {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 210}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p10: started
|
|
:p2: started
|
|
:p7: started
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
:p1: started
|
|
:p6: started
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
:p4: started
|
|
:p11: started
|
|
:p5: started
|
|
:p9: started
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
:p3: started
|
|
p1 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
p9 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p6 - Propose 1 with action nil
|
|
:p8: started
|
|
p4 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
spare = [:p1, :p3, :p8, :p7, :p5, :p6]
|
|
kill: leaders, followers = [:p4, :p9], [:p10, :p11, :p2]
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p7 - prepare from p1
|
|
p8 - prepare from p1
|
|
p6 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - p1 is leader
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p6 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p8 - accept 1 1 {:val, 207}
|
|
p3 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p6 decided 1 {:val, 207}
|
|
p3 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p7: decided {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p1 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p6: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p3: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
:p11: started
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
:p4: started
|
|
:p5: started
|
|
:p3: started
|
|
:p7: started
|
|
:p10: started
|
|
:p9: started
|
|
:p8: started
|
|
:p6: started
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
:p2: started
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
p4 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
:p1: started
|
|
p3 - Propose 1 with action nil
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
spare = [:p4, :p2, :p5, :p10, :p7, :p3]
|
|
kill: leaders, followers = [:p1, :p6], [:p8, :p9, :p11]
|
|
p6 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p6 - p1 is leader
|
|
p7 - p1 is leader
|
|
p4 - p1 is leader
|
|
p10 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p5 - p10 is leader
|
|
p3 - p10 is leader
|
|
p7 - p10 is leader
|
|
p4 - p10 is leader
|
|
p10 - p10 is leader
|
|
p2 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p10
|
|
p3 - prepare from p10
|
|
p5 - prepare from p10
|
|
p7 - prepare from p10
|
|
p4 - prepare from p10
|
|
p10 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 202}
|
|
p10 - accept 1 1 {:val, 202}
|
|
p7 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p2 - accept 1 1 {:val, 202}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p4 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 202}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p10: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p7: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p5: started
|
|
:p11: started
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
:p2: started
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
:p9: started
|
|
:p10: started
|
|
:p3: started
|
|
p5 - Propose 1 with action nil
|
|
:p4: started
|
|
:p8: started
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
:p1: started
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
:p6: started
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
p7 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
p10 SET BALLOT VALUE 3 nil
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
spare = [:p3, :p2, :p10, :p1, :p4, :p5]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p9, :p7], [:p6, :p8, :p11]
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p3 - p1 is leader
|
|
p9 - p1 is leader
|
|
p10 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p7 - prepare from p1
|
|
p3 - prepare from p1
|
|
p10 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p9 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p10 - accept 1 1 {:val, 210}
|
|
p1 11 7 true
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 210}
|
|
p10 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 210}
|
|
p3 - Propose 1 with action nil
|
|
p3 - Has already decided for 1 sending {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p1: started
|
|
:p4: started
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
:p7: started
|
|
:p11: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p10: started
|
|
p4 - Propose 1 with action nil
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
:p9: started
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
:p6: started
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
p11 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
:p8: started
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
p7 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
:p2: started
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
spare = [:p4, :p5, :p10, :p2, :p9, :p1]
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
kill: leaders, followers = [:p11, :p7], [:p3, :p6, :p8]
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p7 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p11 - prepare from p1
|
|
p7 - prepare from p1
|
|
p2 - p1 is leader
|
|
p1 - prepare from p1
|
|
p10 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p11 - accept 1 1 {:val, 207}
|
|
p4 - accept 1 1 {:val, 207}
|
|
p7 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p9 - accept 1 1 {:val, 207}
|
|
p1 11 7 true
|
|
p2 - accept 1 1 {:val, 207}
|
|
p10 - accept 1 1 {:val, 207}
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 8 true
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p4 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p9 decided 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 207}
|
|
p9: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p5: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p4: decided {:val, 207}
|
|
p9: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p9
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
:p10: started
|
|
:p8: started
|
|
:p3: started
|
|
:p1: started
|
|
:p11: started
|
|
:p9: started
|
|
:p5: started
|
|
:p6: started
|
|
:p2: started
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
:p7: started
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
p5 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p7 - Propose 1 with action nil
|
|
:p4: started
|
|
p1 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p1, :p11, :p9, :p2, :p10, :p8]
|
|
kill: leaders, followers = [:p5, :p7], [:p6, :p4, :p3]
|
|
p7 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p10 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p2 - p1 is leader
|
|
p7 - accept 1 1 {:val, 207}
|
|
p1 SET BALLOT VALUE {:val, 207}
|
|
p9 - accept 1 1 {:val, 207}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p11 - accept 1 1 {:val, 207}
|
|
p1 11 7 true
|
|
p1 - prepared 1 1 nil nil
|
|
p10 - accept 1 1 {:val, 207}
|
|
p1 Try to run prepared
|
|
p8 - accept 1 1 {:val, 207}
|
|
p1 11 8 true
|
|
p10 - p1 is leader
|
|
p1 - accept 1 1 {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 207}
|
|
p1 decided 1 {:val, 207}
|
|
p11 decided 1 {:val, 207}
|
|
p10 decided 1 {:val, 207}
|
|
p8 decided 1 {:val, 207}
|
|
p7 decided 1 {:val, 207}
|
|
p5 - p1 is leader
|
|
p9 decided 1 {:val, 207}
|
|
p5 decided 1 {:val, 207}
|
|
p2 - accept 1 1 {:val, 207}
|
|
p2 decided 1 {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 207}
|
|
p1: decided {:val, 207}
|
|
p8: decided {:val, 207}
|
|
p11 - p1 is leader
|
|
p9: decided {:val, 207}
|
|
p10: decided {:val, 207}
|
|
p2: decided {:val, 207}
|
|
p11: decided {:val, 207}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 207, val: 207, val: 207, val: 207, val: 207, val: 207]
|
|
Starting paxos for p8
|
|
Starting paxos for p10
|
|
Starting paxos for p2
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p11
|
|
:p1: started
|
|
:p7: started
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
:p6: started
|
|
:p10: started
|
|
:p5: started
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
:p3: started
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
p6 - Propose 1 with action nil
|
|
:p9: started
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
:p8: started
|
|
p11 SET BALLOT VALUE 3 nil
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p11: started
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
:p4: started
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
spare = [:p11, :p9, :p3, :p7, :p8, :p6]
|
|
kill: leaders, followers = [:p10, :p4], [:p2, :p5, :p1]
|
|
p4 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p8 - p1 is leader
|
|
p7 - p1 is leader
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p4 - p1 is leader
|
|
p11 - p1 is leader
|
|
p8 - p10 is leader
|
|
p7 - p10 is leader
|
|
p3 - p10 is leader
|
|
p6 - p10 is leader
|
|
p9 - p10 is leader
|
|
p11 - p10 is leader
|
|
p8 - p11 is leader
|
|
p7 - p11 is leader
|
|
p3 - p11 is leader
|
|
p6 - p11 is leader
|
|
p9 - p11 is leader
|
|
p11 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p11
|
|
p3 - prepare from p11
|
|
p7 - prepare from p11
|
|
p6 - prepare from p11
|
|
p11 - prepare from p11
|
|
p8 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 202}
|
|
p11 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p6 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p3 - accept 1 1 {:val, 202}
|
|
p9 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p7 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p8 - accept 1 1 {:val, 202}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p8 decided 1 {:val, 202}
|
|
p9 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 202}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p11: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p9: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p8: decided {:val, 202}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p3
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p7: started
|
|
:p3: started
|
|
:p10: started
|
|
:p8: started
|
|
:p6: started
|
|
:p2: started
|
|
:p11: started
|
|
:p4: started
|
|
:p9: started
|
|
:p5: started
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
spare = [:p6, :p2, :p11, :p4, :p9, :p5]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
kill: leaders, followers = [:p1, :p7], [:p3, :p10, :p8]
|
|
p1 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p6 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p6 - p1 is leader
|
|
p11 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p9 - p1 is leader
|
|
p6 - p11 is leader
|
|
p9 - p11 is leader
|
|
p2 - p11 is leader
|
|
p11 - p11 is leader
|
|
p5 - p11 is leader
|
|
p4 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p11
|
|
p6 - prepare from p11
|
|
p2 - prepare from p11
|
|
p4 - prepare from p11
|
|
p5 - prepare from p11
|
|
p11 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 206}
|
|
p6 - accept 1 1 {:val, 206}
|
|
p9 - accept 1 1 {:val, 206}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p2 - accept 1 1 {:val, 206}
|
|
p11 accepted 1 1
|
|
p5 - accept 1 1 {:val, 206}
|
|
p4 - accept 1 1 {:val, 206}
|
|
p11 - accept 1 1 {:val, 206}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p4 decided 1 {:val, 206}
|
|
p9 decided 1 {:val, 206}
|
|
p11 decided 1 {:val, 206}
|
|
p2 decided 1 {:val, 206}
|
|
p6 decided 1 {:val, 206}
|
|
p5 decided 1 {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 206}
|
|
p6 - Propose 1 with action nil
|
|
p6 - Has already decided for 1 sending {:val, 206}
|
|
p5: decided {:val, 206}
|
|
p6: decided {:val, 206}
|
|
p4: decided {:val, 206}
|
|
p9: decided {:val, 206}
|
|
p2: decided {:val, 206}
|
|
p11: decided {:val, 206}
|
|
p2: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
[val: 206, val: 206, val: 206, val: 206, val: 206, val: 206]
|
|
Starting paxos for p8
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
Starting paxos for p10
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
:p8: started
|
|
:p3: started
|
|
:p2: started
|
|
:p4: started
|
|
:p11: started
|
|
:p10: started
|
|
:p1: started
|
|
:p5: started
|
|
:p6: started
|
|
:p7: started
|
|
:p9: started
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
spare = [:p10, :p1, :p5, :p6, :p7, :p9]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
kill: leaders, followers = [:p8, :p3], [:p2, :p4, :p11]
|
|
p8 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p9 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p10 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p10 - prepare from p1
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p6 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p5 - prepare from p1
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - p1 is leader
|
|
p6 - p1 is leader
|
|
p9 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 203}
|
|
p10 - accept 1 1 {:val, 203}
|
|
p5 - accept 1 1 {:val, 203}
|
|
p7 - accept 1 1 {:val, 203}
|
|
p9 - accept 1 1 {:val, 203}
|
|
p1 - accept 1 1 {:val, 203}
|
|
p6 - accept 1 1 {:val, 203}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 decided 1 {:val, 203}
|
|
p1 decided 1 {:val, 203}
|
|
p5 decided 1 {:val, 203}
|
|
p6 decided 1 {:val, 203}
|
|
p7 decided 1 {:val, 203}
|
|
p9 decided 1 {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 203}
|
|
p10 - Propose 1 with action nil
|
|
p10 - Has already decided for 1 sending {:val, 203}
|
|
p7: decided {:val, 203}
|
|
p5: decided {:val, 203}
|
|
p6: decided {:val, 203}
|
|
p1: decided {:val, 203}
|
|
p9: decided {:val, 203}
|
|
p10: decided {:val, 203}
|
|
p1: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
[val: 203, val: 203, val: 203, val: 203, val: 203, val: 203]
|
|
Starting paxos for p7
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p3
|
|
Starting paxos for p9
|
|
Starting paxos for p6
|
|
Starting paxos for p11
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
:p4: started
|
|
:p7: started
|
|
:p10: started
|
|
:p9: started
|
|
:p5: started
|
|
:p6: started
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
:p11: started
|
|
:p8: started
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
spare = [:p9, :p6, :p11, :p1, :p2, :p8]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
kill: leaders, followers = [:p7, :p4], [:p10, :p5, :p3]
|
|
p4 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p8 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p1 - p1 is leader
|
|
p6 - p1 is leader
|
|
p2 - p1 is leader
|
|
p11 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p11 - prepare from p1
|
|
p2 - prepare from p1
|
|
p6 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p9 - accept 1 1 {:val, 209}
|
|
p6 - accept 1 1 {:val, 209}
|
|
p2 - accept 1 1 {:val, 209}
|
|
p11 - accept 1 1 {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p8 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p9 decided 1 {:val, 209}
|
|
p11 decided 1 {:val, 209}
|
|
p8 decided 1 {:val, 209}
|
|
p6 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p2 decided 1 {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 209}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p6: decided {:val, 209}
|
|
p11: decided {:val, 209}
|
|
p2: decided {:val, 209}
|
|
p8: decided {:val, 209}
|
|
p9: decided {:val, 209}
|
|
p9: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p9
|
|
Starting paxos for p4
|
|
Starting paxos for p10
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
:p9: started
|
|
:p10: started
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
:p7: started
|
|
:p3: started
|
|
:p11: started
|
|
:p6: started
|
|
:p8: started
|
|
:p1: started
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
spare = [:p11, :p2, :p6, :p3, :p8, :p1]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
kill: leaders, followers = [:p9, :p4], [:p10, :p5, :p7]
|
|
p9 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p11 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p11 - p1 is leader
|
|
p2 - p1 is leader
|
|
p6 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p8 - prepare from p1
|
|
p6 - prepare from p1
|
|
p1 - prepare from p1
|
|
p11 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p8 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p6 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p2 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p6 decided 1 {:val, 210}
|
|
p8 decided 1 {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p8: decided {:val, 210}
|
|
p6: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p11: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p10
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p1
|
|
Starting paxos for p11
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p6
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p11: started
|
|
:p4: started
|
|
:p7: started
|
|
:p10: started
|
|
:p2: started
|
|
:p8: started
|
|
:p9: started
|
|
:p3: started
|
|
:p6: started
|
|
:p5: started
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
spare = [:p4, :p3, :p6, :p7, :p2, :p5]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
kill: leaders, followers = [:p10, :p8], [:p9, :p1, :p11]
|
|
p10 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p4 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 - p10 is leader
|
|
p3 - p10 is leader
|
|
p5 - p10 is leader
|
|
p6 - p10 is leader
|
|
p2 - p10 is leader
|
|
p7 - p10 is leader
|
|
p4 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 - p2 is leader
|
|
p5 - p2 is leader
|
|
p6 - p2 is leader
|
|
p7 - p2 is leader
|
|
p2 sending all prepare 1 1
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p6 - prepare from p2
|
|
p7 - prepare from p2
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 1 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 2 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 3 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 4 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 5 false
|
|
p2 - prepared 1 1 nil nil
|
|
p2 Try to run prepared
|
|
p2 11 6 false
|
|
p2 SET BALLOT VALUE {:val, 202}
|
|
p6 - accept 1 1 {:val, 202}
|
|
p7 - accept 1 1 {:val, 202}
|
|
p5 - accept 1 1 {:val, 202}
|
|
p3 - accept 1 1 {:val, 202}
|
|
p4 - accept 1 1 {:val, 202}
|
|
p2 - accept 1 1 {:val, 202}
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p2 accepted 1 1
|
|
p4 decided 1 {:val, 202}
|
|
p6 decided 1 {:val, 202}
|
|
p7 decided 1 {:val, 202}
|
|
p5 decided 1 {:val, 202}
|
|
p2 decided 1 {:val, 202}
|
|
p3 decided 1 {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 202}
|
|
p4 - Propose 1 with action nil
|
|
p4 - Has already decided for 1 sending {:val, 202}
|
|
p5: decided {:val, 202}
|
|
p4: decided {:val, 202}
|
|
p6: decided {:val, 202}
|
|
p2: decided {:val, 202}
|
|
p7: decided {:val, 202}
|
|
p3: decided {:val, 202}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 202, val: 202, val: 202, val: 202, val: 202, val: 202]
|
|
Starting paxos for p1
|
|
Starting paxos for p8
|
|
Starting paxos for p5
|
|
Starting paxos for p10
|
|
Starting paxos for p7
|
|
Starting paxos for p9
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p11
|
|
:p7: started
|
|
:p1: started
|
|
:p8: started
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
:p10: started
|
|
:p11: started
|
|
:p9: started
|
|
:p3: started
|
|
:p6: started
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
spare = [:p9, :p3, :p4, :p6, :p2, :p11]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
kill: leaders, followers = [:p1, :p8], [:p5, :p10, :p7]
|
|
p1 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p9 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p9 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p11 - p1 is leader
|
|
p4 - p1 is leader
|
|
p6 - p1 is leader
|
|
p3 - p11 is leader
|
|
p9 - p11 is leader
|
|
p11 - p11 is leader
|
|
p2 - p11 is leader
|
|
p6 - p11 is leader
|
|
p4 - p11 is leader
|
|
p11 sending all prepare 1 1
|
|
p11 SET BALLOT VALUE 2 nil
|
|
p9 - prepare from p11
|
|
p3 - prepare from p11
|
|
p11 - prepare from p11
|
|
p6 - prepare from p11
|
|
p2 - prepare from p11
|
|
p4 - prepare from p11
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 1 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 2 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 3 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 4 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 5 false
|
|
p11 - prepared 1 1 nil nil
|
|
p11 Try to run prepared
|
|
p11 11 6 false
|
|
p11 SET BALLOT VALUE {:val, 201}
|
|
p11 - accept 1 1 {:val, 201}
|
|
p9 - accept 1 1 {:val, 201}
|
|
p6 - accept 1 1 {:val, 201}
|
|
p3 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p2 - accept 1 1 {:val, 201}
|
|
p4 - accept 1 1 {:val, 201}
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p11 accepted 1 1
|
|
p3 decided 1 {:val, 201}
|
|
p9 decided 1 {:val, 201}
|
|
p2 decided 1 {:val, 201}
|
|
p4 decided 1 {:val, 201}
|
|
p6 decided 1 {:val, 201}
|
|
p11 decided 1 {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p9 - Propose 1 with action nil
|
|
p9 - Has already decided for 1 sending {:val, 201}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 201}
|
|
p9: decided {:val, 201}
|
|
p11: decided {:val, 201}
|
|
p6: decided {:val, 201}
|
|
p2: decided {:val, 201}
|
|
p3: decided {:val, 201}
|
|
p4: decided {:val, 201}
|
|
p3: {:message_queue_len, 0}
|
|
p6: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 201, val: 201, val: 201, val: 201, val: 201, val: 201]
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p8
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p9
|
|
Starting paxos for p5
|
|
Starting paxos for p7
|
|
Starting paxos for p11
|
|
:p6: started
|
|
:p1: started
|
|
:p2: started
|
|
:p10: started
|
|
:p4: started
|
|
:p3: started
|
|
:p8: started
|
|
:p5: started
|
|
:p9: started
|
|
:p7: started
|
|
:p11: started
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
spare = [:p1, :p10, :p9, :p5, :p7, :p11]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
kill: leaders, followers = [:p6, :p2], [:p4, :p3, :p8]
|
|
p6 - Propose 1 with action nil
|
|
p2 - Propose 1 with action nil
|
|
p6 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p11 - Propose 1 with action nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p10 - prepare from p1
|
|
p5 - prepare from p1
|
|
p9 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - prepare from p1
|
|
p11 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - p1 is leader
|
|
p5 - p1 is leader
|
|
p11 - p1 is leader
|
|
p1 Try to run prepared
|
|
p10 - p1 is leader
|
|
p9 - p1 is leader
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p10 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p9 - accept 1 1 {:val, 210}
|
|
p7 - accept 1 1 {:val, 210}
|
|
p11 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p10 decided 1 {:val, 210}
|
|
p9 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p7 decided 1 {:val, 210}
|
|
p11 decided 1 {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p11 - Propose 1 with action nil
|
|
p11 - Has already decided for 1 sending {:val, 210}
|
|
p1 decided 1 {:val, 210}
|
|
p1 - Propose 1 with action nil
|
|
p1 - Has already decided for 1 sending {:val, 210}
|
|
p9: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p10: decided {:val, 210}
|
|
p7: decided {:val, 210}
|
|
p11: decided {:val, 210}
|
|
p1: decided {:val, 210}
|
|
p1: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p11: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p7
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p2
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p11: started
|
|
:p6: started
|
|
:p2: started
|
|
:p8: started
|
|
:p9: started
|
|
:p3: started
|
|
:p1: started
|
|
:p10: started
|
|
:p5: started
|
|
:p7: started
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
spare = [:p2, :p8, :p9, :p10, :p3, :p5]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
kill: leaders, followers = [:p7, :p1], [:p4, :p11, :p6]
|
|
p1 - Propose 1 with action nil
|
|
p7 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p9 - p1 is leader
|
|
p8 - p1 is leader
|
|
p10 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p10 is leader
|
|
p8 - p10 is leader
|
|
p3 - p10 is leader
|
|
p9 - p10 is leader
|
|
p10 - p10 is leader
|
|
p5 - p10 is leader
|
|
p10 sending all prepare 1 1
|
|
p10 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p10
|
|
p8 - prepare from p10
|
|
p3 - prepare from p10
|
|
p10 - prepare from p10
|
|
p9 - prepare from p10
|
|
p5 - prepare from p10
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 1 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 2 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 3 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 4 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 5 false
|
|
p10 - prepared 1 1 nil nil
|
|
p10 Try to run prepared
|
|
p10 11 6 false
|
|
p10 SET BALLOT VALUE {:val, 208}
|
|
p9 - accept 1 1 {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p3 - accept 1 1 {:val, 208}
|
|
p5 - accept 1 1 {:val, 208}
|
|
p10 - accept 1 1 {:val, 208}
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p10 accepted 1 1
|
|
p5 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p10 decided 1 {:val, 208}
|
|
p9 decided 1 {:val, 208}
|
|
p3 decided 1 {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p2 - Propose 1 with action nil
|
|
p2 - Has already decided for 1 sending {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p3: decided {:val, 208}
|
|
p10: decided {:val, 208}
|
|
p9: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p3: {:message_queue_len, 0}
|
|
p8: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p9: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p8
|
|
Starting paxos for p9
|
|
Starting paxos for p11
|
|
Starting paxos for p2
|
|
Starting paxos for p6
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p10
|
|
Starting paxos for p4
|
|
Starting paxos for p7
|
|
Starting paxos for p5
|
|
:p8: started
|
|
:p2: started
|
|
:p9: started
|
|
:p10: started
|
|
:p11: started
|
|
:p3: started
|
|
:p1: started
|
|
:p6: started
|
|
:p4: started
|
|
:p7: started
|
|
:p5: started
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
spare = [:p3, :p1, :p10, :p4, :p7, :p5]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
p9 - Propose 1 with action nil
|
|
kill: leaders, followers = [:p8, :p9], [:p11, :p2, :p6]
|
|
p8 - Propose 1 with action nil
|
|
p9 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p7 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - prepare from p1
|
|
p10 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p4 - p1 is leader
|
|
p10 - p1 is leader
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - p1 is leader
|
|
p7 - p1 is leader
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 209}
|
|
p1 - accept 1 1 {:val, 209}
|
|
p10 - accept 1 1 {:val, 209}
|
|
p4 - accept 1 1 {:val, 209}
|
|
p7 - accept 1 1 {:val, 209}
|
|
p3 - accept 1 1 {:val, 209}
|
|
p5 - accept 1 1 {:val, 209}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p5 decided 1 {:val, 209}
|
|
p4 decided 1 {:val, 209}
|
|
p3 decided 1 {:val, 209}
|
|
p7 decided 1 {:val, 209}
|
|
p1 decided 1 {:val, 209}
|
|
p10 decided 1 {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p5 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 209}
|
|
p3 - Has already decided for 1 sending {:val, 209}
|
|
p10: decided {:val, 209}
|
|
p1: decided {:val, 209}
|
|
p4: decided {:val, 209}
|
|
p7: decided {:val, 209}
|
|
p5: decided {:val, 209}
|
|
p3: decided {:val, 209}
|
|
p1: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p10: {:message_queue_len, 0}
|
|
[val: 209, val: 209, val: 209, val: 209, val: 209, val: 209]
|
|
Starting paxos for p10
|
|
Starting paxos for p3
|
|
Starting paxos for p11
|
|
Starting paxos for p6
|
|
Starting paxos for p9
|
|
Starting paxos for p8
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p7
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p10: started
|
|
:p3: started
|
|
:p11: started
|
|
:p6: started
|
|
:p9: started
|
|
:p8: started
|
|
:p4: started
|
|
:p1: started
|
|
:p7: started
|
|
:p2: started
|
|
:p5: started
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
spare = [:p8, :p4, :p1, :p7, :p2, :p5]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
kill: leaders, followers = [:p10, :p3], [:p11, :p6, :p9]
|
|
p10 - Propose 1 with action nil
|
|
p3 - Propose 1 with action nil
|
|
p10 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p8 SET BALLOT VALUE 3 nil
|
|
p11 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p5 - Propose 1 with action nil
|
|
p8 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p7 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p8 - p1 is leader
|
|
p1 - p1 is leader
|
|
p7 - p1 is leader
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p8 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p7 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 11 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 3 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 4 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 5 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 11 6 false
|
|
p1 SET BALLOT VALUE {:val, 208}
|
|
p1 - accept 1 1 {:val, 208}
|
|
p8 - accept 1 1 {:val, 208}
|
|
p4 - accept 1 1 {:val, 208}
|
|
p2 - accept 1 1 {:val, 208}
|
|
p7 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p5 - accept 1 1 {:val, 208}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 decided 1 {:val, 208}
|
|
p2 decided 1 {:val, 208}
|
|
p5 decided 1 {:val, 208}
|
|
p8 decided 1 {:val, 208}
|
|
p7 decided 1 {:val, 208}
|
|
p4 decided 1 {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p5 - Propose 1 with action nil
|
|
p5 - Has already decided for 1 sending {:val, 208}
|
|
p8 - Propose 1 with action nil
|
|
p8 - Has already decided for 1 sending {:val, 208}
|
|
p1: decided {:val, 208}
|
|
p7: decided {:val, 208}
|
|
p4: decided {:val, 208}
|
|
p2: decided {:val, 208}
|
|
p5: decided {:val, 208}
|
|
p8: decided {:val, 208}
|
|
p8: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p1: {:message_queue_len, 0}
|
|
p7: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 208, val: 208, val: 208, val: 208, val: 208, val: 208]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p2: started
|
|
:p5: started
|
|
:p1: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
:p3: started
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - p1 is leader
|
|
p4 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p3 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p4 - p2 is leader
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p2 Try to run prepared
|
|
p3 - p2 is leader
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p5 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 decided 1 {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p2: started
|
|
:p5: started
|
|
:p1: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p2 - p1 is leader
|
|
p1 Try to run prepared
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p5 - p1 is leader
|
|
p5 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p3 - p2 is leader
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p4 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p1: started
|
|
:p5: started
|
|
:p4: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p5 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 5 5 true
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p5 - p1 is leader
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p4 - p2 is leader
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p3 - p2 is leader
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p5: started
|
|
:p1: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p2: started
|
|
:p4: started
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p5 - p1 is leader
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3 - p2 is leader
|
|
p2: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p3: started
|
|
:p2: started
|
|
:p5: started
|
|
:p4: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
:p1: started
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p5 - p1 is leader
|
|
p5 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p5: started
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - p1 is leader
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p3 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p5 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p1: started
|
|
:p5: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
:p4: started
|
|
:p2: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - p1 is leader
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p2 - p1 is leader
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p5 - p1 is leader
|
|
p5 - p2 is leader
|
|
p4 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p4: started
|
|
:p1: started
|
|
:p2: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
:p5: started
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 5 5 true
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 - accept 1 1 {:val, 210}
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p2 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p4 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 decided 1 {:val, 210}
|
|
p4 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p5 - p2 is leader
|
|
p4: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p5: started
|
|
:p4: started
|
|
:p1: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p2 - Propose 1 with action nil
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
:p3: started
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p5 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p2 - accept 1 1 {:val, 210}
|
|
p5 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p2 - p1 is leader
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p3 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p5 - p2 is leader
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p4 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p5: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p3: started
|
|
:p2: started
|
|
:p4: started
|
|
:p1: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 210}
|
|
p2 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p3 - accept 1 1 {:val, 210}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 210}
|
|
p4 - accept 1 1 {:val, 210}
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 210}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 210}}
|
|
p5 - p1 is leader
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 210}
|
|
p4 - accept 1 2 {:val, 210}
|
|
p5 - accept 1 2 {:val, 210}
|
|
p2 - prepared 1 2 1 {:val, 210}
|
|
p3 - accept 1 2 {:val, 210}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 210}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p4 decided 1 {:val, 210}
|
|
p5 decided 1 {:val, 210}
|
|
p2 decided 1 {:val, 210}
|
|
p3 decided 1 {:val, 210}
|
|
p3 - p2 is leader
|
|
p5: decided {:val, 210}
|
|
p3: decided {:val, 210}
|
|
p4: decided {:val, 210}
|
|
p2: decided {:val, 210}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 210, val: 210, val: 210, val: 210]
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p1
|
|
:p3: started
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
:p1: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p5 - accept 1 2 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p3 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
:p5: started
|
|
:p1: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p5 - accept 1 2 {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p5 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
:p2: started
|
|
:p3: started
|
|
:p1: started
|
|
:p4: started
|
|
:p5: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 5 4 true
|
|
p2 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p2 - p2 is leader
|
|
p4 - p2 is leader
|
|
p3 - p2 is leader
|
|
p5 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p5 - accept 1 2 {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
:p4: started
|
|
:p2: started
|
|
:p1: started
|
|
:p3: started
|
|
:p5: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p4 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p3 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p2 Try to run prepared
|
|
p5 - accept 1 2 {:val, 205}
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p4 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p4
|
|
Starting paxos for p3
|
|
:p5: started
|
|
:p1: started
|
|
:p2: started
|
|
:p4: started
|
|
:p3: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p5 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p3 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p5 - accept 1 2 {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p5 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
:p1: started
|
|
:p4: started
|
|
:p2: started
|
|
:p3: started
|
|
:p5: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p5 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p5 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p5 - accept 1 2 {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p4: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p2
|
|
:p4: started
|
|
:p5: started
|
|
:p1: started
|
|
:p3: started
|
|
:p2: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p1
|
|
p4 - prepare from p1
|
|
p1 - prepare from p1
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p4 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p4 - p2 is leader
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p3 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p5 - accept 1 2 {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p1
|
|
Starting paxos for p3
|
|
Starting paxos for p4
|
|
Starting paxos for p5
|
|
Starting paxos for p2
|
|
:p1: started
|
|
:p3: started
|
|
:p4: started
|
|
:p5: started
|
|
:p2: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p3 - p1 is leader
|
|
p2 - p1 is leader
|
|
p4 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p3 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p5 - prepare from p1
|
|
p1 Try to run prepared
|
|
p2 - prepare from p1
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p2 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 5 5 true
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p3 - p2 is leader
|
|
p4 - p2 is leader
|
|
p2 - p2 is leader
|
|
p5 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p2 - prepare from p2
|
|
p5 - prepare from p2
|
|
p3 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p5 - accept 1 2 {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p4 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p3: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p3
|
|
Starting paxos for p1
|
|
Starting paxos for p2
|
|
Starting paxos for p5
|
|
Starting paxos for p4
|
|
:p3: started
|
|
:p4: started
|
|
:p1: started
|
|
:p5: started
|
|
:p2: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p3 - p1 is leader
|
|
p5 - p1 is leader
|
|
p1 - p1 is leader
|
|
p4 - p1 is leader
|
|
p2 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p1
|
|
p2 - prepare from p1
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p2 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p3 - accept 1 1 {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p2 - p2 is leader
|
|
p4 - p2 is leader
|
|
p5 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p5 - prepare from p2
|
|
p3 - prepare from p2
|
|
p4 - prepare from p2
|
|
p2 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p5 - accept 1 2 {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 4 true
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p5 decided 1 {:val, 205}
|
|
p3 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p3: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p4: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|
|
Starting paxos for p1
|
|
Starting paxos for p4
|
|
Starting paxos for p2
|
|
Starting paxos for p3
|
|
Starting paxos for p5
|
|
:p5: started
|
|
:p1: started
|
|
:p4: started
|
|
:p2: started
|
|
:p3: started
|
|
p1 - Propose 1 with action :kill_before_decision
|
|
p1 SET BALLOT VALUE 3 nil
|
|
p3 SET BALLOT VALUE 3 nil
|
|
p4 SET BALLOT VALUE 3 nil
|
|
p2 SET BALLOT VALUE 3 nil
|
|
p5 SET BALLOT VALUE 3 nil
|
|
p2 - Propose 1 with action nil
|
|
p4 - p1 is leader
|
|
p1 - p1 is leader
|
|
p5 - p1 is leader
|
|
p2 - p1 is leader
|
|
p3 - p1 is leader
|
|
p1 sending all prepare 1 1
|
|
p1 SET BALLOT VALUE 2 nil
|
|
p1 - prepare from p1
|
|
p4 - prepare from p1
|
|
p2 - prepare from p1
|
|
p3 - prepare from p1
|
|
p5 - prepare from p1
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 1 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 2 false
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 3 false
|
|
p1 SET BALLOT VALUE {:val, 205}
|
|
p1 - prepared 1 1 nil nil
|
|
p2 - accept 1 1 {:val, 205}
|
|
p4 - accept 1 1 {:val, 205}
|
|
p1 Try to run prepared
|
|
p3 - accept 1 1 {:val, 205}
|
|
p5 - accept 1 1 {:val, 205}
|
|
p1 5 4 true
|
|
p1 - prepared 1 1 nil nil
|
|
p1 Try to run prepared
|
|
p1 5 5 true
|
|
p1 - accept 1 1 {:val, 205}
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 accepted 1 1
|
|
p1 - Leader has action to die before decision {:decide, 1, {:val, 205}}
|
|
p5 - p2 is leader
|
|
p2 - p2 is leader
|
|
p4 - p2 is leader
|
|
p3 - p2 is leader
|
|
p2 sending all prepare 1 2
|
|
p2 SET BALLOT VALUE 2 nil
|
|
p3 - prepare from p2
|
|
p2 - prepare from p2
|
|
p4 - prepare from p2
|
|
p5 - prepare from p2
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 1 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 2 false
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p2 Try to run prepared
|
|
p2 5 3 false
|
|
p2 SET BALLOT VALUE {:val, 205}
|
|
p4 - accept 1 2 {:val, 205}
|
|
p2 - prepared 1 2 1 {:val, 205}
|
|
p3 - accept 1 2 {:val, 205}
|
|
p2 Try to run prepared
|
|
p5 - accept 1 2 {:val, 205}
|
|
p2 5 4 true
|
|
p2 accepted 1 2
|
|
p2 - accept 1 2 {:val, 205}
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p2 accepted 1 2
|
|
p3 decided 1 {:val, 205}
|
|
p4 decided 1 {:val, 205}
|
|
p2 decided 1 {:val, 205}
|
|
p5 decided 1 {:val, 205}
|
|
p2: decided {:val, 205}
|
|
p5: decided {:val, 205}
|
|
p3: decided {:val, 205}
|
|
p4: decided {:val, 205}
|
|
p4: {:message_queue_len, 0}
|
|
p2: {:message_queue_len, 0}
|
|
p5: {:message_queue_len, 0}
|
|
p3: {:message_queue_len, 0}
|
|
[val: 205, val: 205, val: 205, val: 205]
|