eth: only disable fast sync after success #16062
Merged
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.
With the trie pruning PR (#15857), we're redefined fast sync to not hard reset to block 0 if downloading the pivot fails 10 times. This is a subsequent change along the same line to not revert to full sync if fast sync fails, only if it succeeds.
This code path was hit by Rinkeby miners which insta-mined a block on startup, started fast sync, failed, and switched to full sync because of the sole mined block at height 1. This change ensures that blocks mined locally don't disable fast sync.