[FIXED] JetStream catchup may return/delete too much #6213
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.
JetStream catchup could have a follower delete too much because it could send too large delete ranges.
This was due to
LoadNextMsg
being used and not checking if the requestedlast
sequence was exceeded. This could happen ifLoadNextMsg
was used ANDlast < state.LastSeq
AND there's at least one deleted message at sequencelast+1
.Given you have a stream with a message at sequence 1 and 100, with a gap in the middle, there were two issues when requesting only to receive what message is stored at sequence 5 (for example):
Signed-off-by: Maurice van Veen github@mauricevanveen.com