Fix SnapshotTooOld in parameter queries #366
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.
Fixes a regression introduced in #315 / 1.14.0.
#315 introduced compacting for parameter storage, and switched to using snapshot queries associated with the checkpoint lookups. The snapshots typically give us around 5 minutes from the time we get the checkpoint until the time we do the parameter lokoups.
There is an edge case:
It then uses the same snapshot for the last queried snapshot when doing the parameter queries, resulting in a SnapshotTooOld error:
This fixes it by refreshing the checkpoint once a minute if the checkpoint stream is idle.