Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix reverse range read performance bug #2650

Merged

Conversation

ajbeamon
Copy link
Contributor

@ajbeamon ajbeamon commented Feb 5, 2020

Reverse range reads on the storage server would not pass the specified byte limit to the storage engine but would apply it to the results returned, causing a potentially significant amount of wasted reading.

CC @alecgrieser

…d byte limit to the storage engine but would apply it to the results returned, causing a potentially significant amount of wasted reading.
@ajbeamon
Copy link
Contributor Author

ajbeamon commented Feb 5, 2020

I probably should have created this as a draft, but I'm still running some tests on it at the moment and it shouldn't be merged.

…irection. This should not change any behavior.
…adRange from VectorRef<KeyValueRef> to RangeResultRef.
…iteration case in the forward direction when we don't exhaust our limits in the disk read. This also hopefully makes the code a bit clearer.
…rse range reads to match forward range reads
@ajbeamon
Copy link
Contributor Author

The tests are passing now, so this is ready for review.

@ajbeamon
Copy link
Contributor Author

@etschannen I've addressed the review comments on this one.

@ajbeamon ajbeamon merged commit fcbdcda into apple:release-6.2 Feb 20, 2020
@ajbeamon ajbeamon deleted the fix-reverse-range-read-byte-limit-bug branch February 24, 2020 17:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants