[Forked] HADOOP-19027. S3A: S3AInputStream doesn't recover from channel exceptions#8
Open
shkhrgpt wants to merge 1 commit intobranch-3.3from
Open
Conversation
|
Hello! I’m Violet Nspct, your AI-powered test review assistant. I can help improve your pull requests by suggesting missing or additional tests. Use the command below:
I’m here to make your code more reliable—just let me know when to start! |
Collaborator
Author
|
@violetnspct test |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Original Description:
This is a fraction of apache#6425 backported to the V1 SDK, which does a lot of V2-specific translation/unwinding.
416 responses are mapped to RangeNotSatisfiableEOFException, whose retry policy is: fail.
Classic EOFException is now retried as connection failure. calls to read() and lazyseek all retry on this with full retry policy, including handling of socket errors.
Everything related to new sdk, its complex http channel stuff: omitted.
This means that the following will be handled
Out of range GET is mappped to RangeNotSatisfiableEOFException so it is not retried,
this is critical. Without it ITestS3AOpenCost.testReadPastEOF() will time out as it is continually retrying.
How was this patch tested?
Cherrypick of new ITestS3AOpenCost.
For code changes:
LICENSE,LICENSE-binary,NOTICE-binaryfiles?