quorum/raft
Joel Burget 5765a6a331 Make sure to update speculative chain head in `accept.` Fixes #428
The scenario is covered in https://github.com/jpmorganchase/quorum/issues/428, but in short, if
we're mining but two new blocks come in over the network:

(1) The first will clear the speculative chain.
(2) The second previously would have been a noop here --
    `removeProposedTxes` does nothing in this case, but we need to update
    the speculative chain head to the new block.

The important invariant identified by @guojian1234 that this now
maintains is
`minter.speculativeChain.head.blockNumber >= minter.chain.head.blockNumber`.
2018-07-30 09:58:00 -04:00
..
api.go expose leader enode id to console (#426) 2018-07-12 00:44:32 -04:00
backend.go Geth 1.7.2 rebase and addition of Istanbul BFT (#207) 2017-10-31 18:24:11 -04:00
constants.go Dynamic raft membership support (#130) 2017-08-28 17:43:44 -04:00
doc.md Merge pull request #321 from fgimenez/fix-raft-doc-tx 2018-07-14 23:04:21 -04:00
events.go Add Raft-based consensus (#79) 2017-03-23 13:41:02 -05:00
handler.go expose leader enode id to console (#426) 2018-07-12 00:44:32 -04:00
listener.go Add Raft-based consensus (#79) 2017-03-23 13:41:02 -05:00
minter.go Geth 1.7.2 rebase and addition of Istanbul BFT (#207) 2017-10-31 18:24:11 -04:00
peer.go Dynamic raft membership support (#130) 2017-08-28 17:43:44 -04:00
persistence.go Geth 1.7.2 rebase and addition of Istanbul BFT (#207) 2017-10-31 18:24:11 -04:00
snapshot.go Add missing argument to checkpoint. 2018-02-02 13:45:40 -05:00
speculative_chain.go Make sure to update speculative chain head in `accept.` Fixes #428 2018-07-30 09:58:00 -04:00
util.go Geth 1.7.2 rebase and addition of Istanbul BFT (#207) 2017-10-31 18:24:11 -04:00
wal.go Geth 1.7.2 rebase and addition of Istanbul BFT (#207) 2017-10-31 18:24:11 -04:00