2

What happens when a network comes to a consensus about a transaction, but that transaction fails to get applied on some nodes but not all nodes?

A more concrete example is createAccount operation. When some nodes apply the operation and add a new account but some others don't, what happens? And I don't mean it in terms of bad quorum configurations. What happens when there's, for example, a database failure or any kind of systematic failure when applying operations?

2

The rules for applying transactions are deterministic, so any validator that fails a transaction that should have succeeded is ill-behaved. SCP survives ill-behaved nodes so long as there is a well-behaved quorum U in which nodes enjoy quorum intersection after removing all nodes not in U from everyone's quorum slices.

  • As a node that failed to apply a set of transactions without purposefully being malicious, what measurements are taken to roll back the changes or reapply the transactions? – B.Li Oct 15 '18 at 22:44
  • If your node is faulty, it needs to be replaced. But note that there's a distinction between just failing to apply transactions because you crashed, and falsely claiming that the transactions failed (and you increased sequence numbers, charged fees, etc.). The former is self-correcting by restarting stellar-core, while the latter indicates your node is faulty and needs to be replaced. – user3188445 Oct 16 '18 at 0:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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