-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Add operation retry for exceeded quota group OperationReadGroup #4599
Add operation retry for exceeded quota group OperationReadGroup #4599
Conversation
Hi! I'm the modular magician. Your PR generated some diffs in downstreams - here they are. Diff report:Terraform GA: Diff ( 2 files changed, 12 insertions(+), 1 deletion(-)) |
I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=177549" |
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.
LGTM.
It might be nice to have unit tests for the error retry predicate.
One other thing: defaultErrorRetryPredicates includes is409OperationInProgressError, which is operation-specific. Would it make sense to include this in the defaults as well? Or would it be better to take the other one out of the defaults? Something else?
This comment has been minimized.
This comment has been minimized.
@melinath I'll add the test!
Good point. I think it's minor, but this predicate is pretty specific to querying operations. Adding it to the defaults would place the check in non-operation requests, which seems unnecessary. Looking back to when the 409 predicate was added to defaults: d9ffbaf#diff-e59399c5cffdeb55901ca52dbe08a43f38439acb5ca7eb3a5532541cd7766e94R20 |
Tests failed during RECORDING mode: TestAccCloudAssetProjectFeed_cloudAssetProjectFeedExample|TestAccComputeInstanceFromTemplate_012_removableFields|TestAccComputeForwardingRule_forwardingRuleHttpLbExample|TestAccComposerEnvironment_update|TestAccComposerEnvironment_withSoftwareConfig|TestAccComposerEnvironment_withEncryptionConfig Please fix these to complete your PR |
efaa4c2
to
cbecf28
Compare
Hi! I'm the modular magician. Your PR generated some diffs in downstreams - here they are. Diff report:Terraform GA: Diff ( 3 files changed, 23 insertions(+), 1 deletion(-)) |
I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=178413" |
Fixes hashicorp/terraform-provider-google#8655
The error we need to retry on:
Currently only GCE has a quota group called
OperationReadGroup
, but the compute operations use CommonRefreshFunc. Rather than rewrite compute operations to use a non-common refresh function, I just added another retry predicate to the existing one.Tested by spamming operation reads. Sorry GCE SRE's...
Release Note Template for Downstream PRs (will be copied)