fix: use retry loop when loading deletion files #2899
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.
When loading deletion files we were directly accessing
ObjectStore::inner
which bypasses the retry loop. This makes loading deletion files somewhat brittle and was causing issues in scans (which can load a lot of deletion files at the same time they are loading lots of other ranges).This PR changes the deletion file load to use the
ObjectStore
and adds convenience methods to make this easier in the future.In the future we should also move this load to use a
FileScheduler
instead ofObjectStore
so that these deletion file loads do not violate our max-iops-per-scan but that can be done later.