This PR fixed a bug which might cause skipping processing unconfirmed blocks.
During bootstrapping, isSynced should be set to true before calling commitChainUpdate even though we have defer isSynced.Store(true). Otherwise, there's a small chance that defer isSynced.Store(true) is called after chainUpdated is processed, and the unconfirmed block will not be processed (requiring isSynced to be true)
This PR fixed a bug which might cause skipping processing unconfirmed blocks.
During bootstrapping,
isSynced
should be set totrue
before callingcommitChainUpdate
even though we havedefer isSynced.Store(true)
. Otherwise, there's a small chance thatdefer isSynced.Store(true)
is called afterchainUpdated
is processed, and the unconfirmed block will not be processed (requiringisSynced
to betrue
)