CatchUp Changes
tried making some changes to CatchUp, I suspect it's implemented incorrectly. Looking for help fixing this.
The idea is that, if the first block you ask for is an orphan (and only first), you call CatchUp from 6 blocks prior to the current call. If start
is already more than 20 blocks behind the current height, don't call catch up. If start
is already 1, don't call catch up. If start
is between 1 and 6, call CatchUp(1). Maybe you've got a simpler way to implement this.
I also changed the error handling to ignore benign errors: errors where the block is in the future and errors where the block already exists in the state.