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

Add mutex to compute_project_metadata_item #4778

Merged
merged 1 commit into from
May 17, 2021
Merged

Add mutex to compute_project_metadata_item #4778

merged 1 commit into from
May 17, 2021

Conversation

ct-dh
Copy link
Contributor

@ct-dh ct-dh commented May 11, 2021

This PR resolves issue hashicorp/terraform-provider-google#9119 on the terraform provider. Adding a mutex to the compute_project_metadata_item resource means that the provider will not fight itself when applying updates to the common instance metadata (which use optimistic locking). A longer term solution would be to implement batching.

If this PR is for Terraform, I acknowledge that I have:

  • Searched through the issue tracker for an open issue that this either resolves or contributes to, commented on it to claim it, and written "fixes {url}" or "part of {url}" in this PR description. If there were no relevant open issues, I opened one and commented that I would like to work on it (not necessary for very small changes).
  • Generated Terraform, and ran make test and make lint to ensure it passes unit and linter tests.
  • Ensured that all new fields I added that can be set by a user appear in at least one example (for generated resources) or third_party test (for handwritten resources or update tests).
  • Ran relevant acceptance tests (If the acceptance tests do not yet pass or you are unable to run them, please let your reviewer know).
  • Read the Release Notes Guide before writing my release note below.

Release Note Template for Downstream PRs (will be copied)

compute: added mutex in `google_compute_metadata_item` to reduce retries + quota errors

@google-cla
Copy link

google-cla bot commented May 11, 2021

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project (if not, look below for help). Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please visit https://cla.developers.google.com/ to sign.

Once you've signed (or fixed any issues), please reply here with @googlebot I signed it! and we'll verify it.


What to do if you already signed the CLA

Individual signers
Corporate signers

ℹ️ Googlers: Go here for more info.

@modular-magician
Copy link
Collaborator

Hello! I am a robot who works on Magic Modules PRs.

I have detected that you are a community contributor, so your PR will be assigned to someone with a commit-bit on this repo for initial review.

Thanks for your contribution! A human will be with you soon.

@c2thorn, please review this PR or find an appropriate assignee.

@modular-magician modular-magician requested a review from c2thorn May 11, 2021 17:35
@modular-magician
Copy link
Collaborator

Hi! I'm the modular magician. Your PR generated some diffs in downstreams - here they are.

Diff report:

Terraform GA: Diff ( 1 file changed, 4 insertions(+))
Terraform Beta: Diff ( 2 files changed, 6 insertions(+), 1 deletion(-))

@modular-magician
Copy link
Collaborator

I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=186823"

@google-cla google-cla bot added cla: yes and removed cla: no labels May 12, 2021
@modular-magician
Copy link
Collaborator

Hi! I'm the modular magician. Your PR generated some diffs in downstreams - here they are.

Diff report:

Terraform GA: Diff ( 1 file changed, 4 insertions(+))
Terraform Beta: Diff ( 2 files changed, 5 insertions(+), 2 deletions(-))

@modular-magician
Copy link
Collaborator

I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=187002"

@ScottSuarez
Copy link
Contributor

/gcbrun

@modular-magician
Copy link
Collaborator

I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=187866"

@modular-magician
Copy link
Collaborator

Hi! I'm the modular magician. Your PR generated some diffs in downstreams - here they are.

Diff report:

Terraform GA: Diff ( 1 file changed, 4 insertions(+))
Terraform Beta: Diff ( 2 files changed, 6 insertions(+), 1 deletion(-))

@modular-magician
Copy link
Collaborator

I have triggered VCR tests based on this PR's diffs. See the results here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=187867"

@modular-magician
Copy link
Collaborator

I have triggered VCR tests in RECORDING mode for the following tests that failed during VCR: TestAccContainerClusterDatasource_zonal|TestAccContainerClusterDatasource_regional|TestAccBigQueryDataTable_bigtable|TestAccCloudIdentityGroup_update|TestAccComputeAddress_internal|TestAccComputeInstanceTemplate_subnet_auto|TestAccComputeInstanceTemplate_subnet_custom|TestAccComputeInterconnectAttachment_interconnectAttachmentBasicExample|TestAccComputeNetworkPeeringRoutesConfig_networkPeeringRoutesConfigGkeExample|TestAccComputeRegionNetworkEndpointGroup_regionNetworkEndpointGroupAppengineExample|TestAccContainerCluster_basic|TestAccContainerCluster_misc|TestAccContainerCluster_withNotificationConfig|TestAccContainerCluster_withAddons|TestAccContainerCluster_withMasterAuthConfig|TestAccContainerCluster_withNetworkPolicyEnabled|TestAccContainerCluster_withMasterAuthConfig_NoCert|TestAccContainerCluster_withTelemetryEnabled|TestAccContainerCluster_withReleaseChannelEnabled|TestAccContainerCluster_withAuthenticatorGroupsConfig|TestAccContainerCluster_withMasterAuthorizedNetworksConfig|TestAccContainerCluster_withReleaseChannelEnabledDefaultVersion|TestAccContainerCluster_regional|TestAccContainerCluster_regionalWithNodeLocations|TestAccContainerCluster_regionalWithNodePool|TestAccContainerCluster_withTpu|TestAccContainerCluster_withIntraNodeVisibility|TestAccContainerCluster_withPrivateClusterConfig|TestAccContainerCluster_withNodeConfig|TestAccContainerCluster_withVersion|TestAccContainerCluster_withNodeConfigScopeAlias|TestAccContainerCluster_withNodeConfigShieldedInstanceConfig|TestAccContainerCluster_withSandboxConfig|TestAccContainerCluster_withWorkloadMetadataConfig|TestAccContainerCluster_withNodePoolBasic|TestAccContainerCluster_withNodePoolAutoscaling|TestAccContainerCluster_withNodePoolResize|TestAccContainerCluster_network|TestAccContainerCluster_backend|TestAccContainerCluster_withNodePoolMultiple|TestAccContainerCluster_withNodePoolNodeConfig|TestAccContainerCluster_withMaintenanceWindow|TestAccContainerCluster_withRecurringMaintenanceWindow|TestAccContainerCluster_withMaintenanceExclusionWindow|TestAccContainerCluster_withIPAllocationPolicy_existingSecondaryRanges|TestAccContainerCluster_withIPAllocationPolicy_specificIPRanges|TestAccContainerCluster_withIPAllocationPolicy_specificSizes|TestAccContainerCluster_nodeAutoprovisioning|TestAccContainerCluster_nodeAutoprovisioningDefaults|TestAccContainerCluster_withWorkloadIdentityConfig|TestAccContainerCluster_nodeAutoprovisioningDefaultsMinCpuPlatform|TestAccContainerCluster_withAutoscalingProfile|TestAccContainerCluster_withBinaryAuthorization|TestAccContainerCluster_errorNoClusterCreated|TestAccContainerCluster_withFlexiblePodCIDR|TestAccContainerCluster_errorCleanDanglingCluster|TestAccContainerCluster_withDatabaseEncryption|TestAccContainerCluster_withAdvancedDatapath|TestAccContainerCluster_withResourceUsageExportConfig|TestAccContainerCluster_withEnableKubernetesAlpha|TestAccContainerCluster_withMasterAuthorizedNetworksDisabled|TestAccContainerNodePool_basic|TestAccContainerNodePool_withNodeConfig|TestAccContainerNodePool_nodeLocations|TestAccContainerNodePool_maxPodsPerNode|TestAccContainerNodePool_withWorkloadIdentityConfig|TestAccContainerNodePool_withLinuxNodeConfig|TestAccContainerNodePool_withSandboxConfig|TestAccContainerNodePool_withKubeletConfig|TestAccContainerNodePool_withUpgradeSettings|TestAccContainerNodePool_withManagement|TestAccContainerNodePool_withInvalidUpgradeSettings|TestAccContainerNodePool_withGPU|TestAccContainerNodePool_withNodeConfigScopeAlias|TestAccContainerNodePool_regionalAutoscaling|TestAccContainerNodePool_autoscaling|TestAccContainerNodePool_EmptyGuestAccelerator|TestAccContainerNodePool_resize|TestAccContainerNodePool_012_ConfigModeAttr|TestAccContainerNodePool_shieldedInstanceConfig|TestAccContainerNodePool_regionalClusters|TestAccContainerNodePool_ephemeralStorageConfig|TestAccDNSManagedZone_privateUpdate|TestAccDNSPolicy_update|TestAccGKEHubMembership_gkehubMembershipIssuerExample|TestAccGKEHubMembership_gkehubMembershipBasicExample You can view the result here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=187872"

@modular-magician
Copy link
Collaborator

I have triggered VCR tests in RECORDING mode for the following tests that failed during VCR: TestAccBigQueryDataTable_bigtable You can view the result here: "https://ci-oss.hashicorp.engineering/viewQueued.html?itemId=187874"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants