Make sure to update speculative chain head in accept.
#437
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The scenario is covered in
#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 updatethe 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
.Fixes #428.