-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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(storage/chunk/client/aws): have GetObject check for canceled context #14420
Conversation
S3ObjectClient.GetObject incorrectly returned nil, 0, nil when the provided context is already canceled.
@@ -393,7 +393,7 @@ func (a *S3ObjectClient) GetObject(ctx context.Context, objectKey string) (io.Re | |||
// Map the key into a bucket | |||
bucket := a.bucketFromKey(objectKey) | |||
|
|||
var lastErr error | |||
lastErr := ctx.Err() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is what the IBMCloud client does too, though I'm worried there's still an edge case where the context gets canceled in between this line and the first call to retries.Ongoing()
. It sounds pretty unlikely so I didn't handle that here.
This PR must be merged before a backport PR will be created. |
3 similar comments
This PR must be merged before a backport PR will be created. |
This PR must be merged before a backport PR will be created. |
This PR must be merged before a backport PR will be created. |
What this PR does / why we need it:
S3ObjectClient.GetObject incorrectly returned nil, 0, nil when the provided context is already canceled.
Which issue(s) this PR fixes:
N/A
Special notes for your reviewer:
Checklist
CONTRIBUTING.md
guide (required)feat
PRs are unlikely to be accepted unless a case can be made for the feature actually being a bug fix to existing behavior.docs/sources/setup/upgrade/_index.md
deprecated-config.yaml
anddeleted-config.yaml
files respectively in thetools/deprecated-config-checker
directory. Example PR