Details
Description
We've seen the following behavior a couple times:
- SBN is running and somehow encounters an error in the middle of replaying an edit log in the tailer (eg the JN it's reading from crashes)
- SBN successfully has processed half of the edits in the segment it was reading.
- SBN saves a checkpoint, which now falls in the middle of a segment, and then restarts
Upon restart, the SBN will load this checkpoint which falls in the middle of a segment. selectInputStreams then fails when the SBN requests a mid-segment txid.
We should handle this case by downloading the right segment and fast-forwarding to the correct txid.