Consider this simple scenario:

A <--- B

A.QUORUM_SET = [A]
A.THRESHOLD = 100

B.QUORUM_SET = [A,B]
B.THRESHOLD = 49

So A is a higher tier node that comes to consensus with itself. B is a lower tier node that comes to consensus with 1/2 nodes from the set {A,B}.

The two nodes get disconnected. A continues to reach consensus with itself while B gets disconnected but is still coming to consensus with itself. Someone submits a createAccount operation through B.

At some point the network comes backup. A and B are technically out of sync. A does not have B's new account. How can the two nodes sync up without changing any quorum configurations? Can this be done through archive histories?

up vote 1 down vote accepted

A and B cannot sync up with SCP. This is an invalid configuration. B is misconfigured, so should just dump its state and restart with better quorum slices.

SCP only guarantees agreement when there is quorum intersection. (This is one of the reasons stellar-core makes it hard to assign <= 66% threshold. In your example, B would have had to add the configuration line UNSAFE_QUORUM=true to its stellar-core.cfg file.)

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.