-
Notifications
You must be signed in to change notification settings - Fork 9.2k
HADOOP-19181. S3A: IAMCredentialsProvider throttling results in auth failures #8118
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
base: trunk
Are you sure you want to change the base?
Conversation
…failures Hard-code a 60s advance time for credential renewal, so even if a large number of processes simultaneously trying to renew their tokens through IAM requests may trigger throttling, the asynchronous refresh thread has 60s of backoff and retry before the existing credentials become invalid.
|
+1, LGTM wondering if we should add a config to control this though |
|
💔 -1 overall
This message was automatically generated. |
|
Do plan to add a test to create an instance of the class, which will either return no credentials or (in EC2), actually work. Tests run against s3 express one failure for @ahmarsuhail to worry about. and two failures in assume roles of malformed roles. Looks like STS has changed its error text. fix: remove the probes for specific text And here this is all really good for production use: callers are getting errors back from the parser (notable that this change coincides with re-invent). But our tests fail... |
…failures * Add a test case to explicitly instantiate the class and ask for credentials doesn't care about whether credentials are returned (EC2 runs) or if NoAwsCredentialsException is returned -any other exception is raised as a failure. * Make UNIT test suite subclass of HadoopTestBase to avoid instantiating s3a fs. HADOOP-19748: S3A: ITestAssumeRole tests failing now STS returns detailed error messages
|
💔 -1 overall
This message was automatically generated. |
Hard-code a 60s advance time for credential renewal, so even if a large number of processes simultaneously trying to renew their tokens through IAM requests may trigger throttling, the asynchronous refresh thread has 60s of backoff and retry before the existing credentials become invalid.
How was this patch tested?
rerunning store tests, though need to also deploy in ec2 to make sure there are no regressions in normal use.
For code changes:
LICENSE,LICENSE-binary,NOTICE-binaryfiles?