We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 9188c0d commit 8891b3aCopy full SHA for 8891b3a
1 file changed
consensus/src/simplex/actors/voter/actor.rs
@@ -743,6 +743,14 @@ impl<
743
self.state.replay(&artifact);
744
match artifact {
745
Artifact::Notarize(notarize) => {
746
+ // We deliberately do not re-seed the batcher with our
747
+ // own journaled notarize on replay. A crashed validator
748
+ // exits the recovered view rather than resurrecting
749
+ // in-flight quorum state: the batcher stays oblivious
750
+ // to our pre-crash vote, the view nullifies via
751
+ // timeout, and consensus advances. `broadcast_notarize`
752
+ // is still set by `state.replay` so we do not double-
753
+ // vote if the view survives.
754
self.handle_notarize(notarize.clone()).await;
755
self.reporter.report(Activity::Notarize(notarize)).await;
756
}
0 commit comments