openshift / cluster-etcd-operator

Operator to manage the lifecycle of the etcd members of an OpenShift cluster
Apache License 2.0
96 stars 130 forks source link

[release-4.16] OCPBUGS-36489: parallelize member health checks #1290

Closed openshift-cherrypick-robot closed 3 months ago

openshift-cherrypick-robot commented 4 months ago

This is an automated cherry-pick of #1286

/assign tjungblu

/cherrypick release-4.15 release-4.14 release-4.13 release-4.12

openshift-ci-robot commented 4 months ago

@openshift-cherrypick-robot: Jira Issue OCPBUGS-36301 has been cloned as Jira Issue OCPBUGS-36489. Will retitle bug to link to clone. /retitle [release-4.16] OCPBUGS-36489: parallelize member health checks

In response to [this](https://github.com/openshift/cluster-etcd-operator/pull/1290): >This is an automated cherry-pick of #1286 > >/assign tjungblu > >/cherrypick release-4.15 release-4.14 release-4.13 release-4.12 Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Fcluster-etcd-operator). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
openshift-ci-robot commented 4 months ago

@openshift-cherrypick-robot: This pull request references Jira Issue OCPBUGS-36489, which is invalid:

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

The bug has been updated to refer to the pull request using the external bug tracker.

In response to [this](https://github.com/openshift/cluster-etcd-operator/pull/1290): >This is an automated cherry-pick of #1286 > >/assign tjungblu > >/cherrypick release-4.15 release-4.14 release-4.13 release-4.12 Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Fcluster-etcd-operator). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
hasbro17 commented 4 months ago

Added the patch to pass the member as an arg to the health check closure to prevent the member variable changing for each closure to be in compliance with the linter.

pkg/etcdcli/health.go:54:44: loop variable member captured by func literal

https://go.dev/doc/faq#closures_and_goroutines

4.17 is on Go 1.22 which has this issue fixed by default which changes loop variable to have per iteration scope so closure won't have the loop variables change on them. https://go.dev/blog/loopvar-preview https://go.dev/wiki/LoopvarExperiment#what-is-the-problem-this-solves

/approve

tjungblu commented 4 months ago

/label backport-risk-assessed

tjungblu commented 4 months ago

/jira refresh

openshift-ci-robot commented 4 months ago

@tjungblu: This pull request references Jira Issue OCPBUGS-36489, which is invalid:

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

In response to [this](https://github.com/openshift/cluster-etcd-operator/pull/1290#issuecomment-2213217948): >/jira refresh Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Fcluster-etcd-operator). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
tjungblu commented 3 months ago

/jira refresh

openshift-ci-robot commented 3 months ago

@tjungblu: This pull request references Jira Issue OCPBUGS-36489, which is invalid:

Comment /jira refresh to re-evaluate validity if changes to the Jira bug are made, or edit the title of this pull request to link to a different bug.

In response to [this](https://github.com/openshift/cluster-etcd-operator/pull/1290#issuecomment-2242376612): >/jira refresh Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Fcluster-etcd-operator). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
tjungblu commented 3 months ago

/jira refresh

openshift-ci-robot commented 3 months ago

@tjungblu: This pull request references Jira Issue OCPBUGS-36489, which is valid.

7 validation(s) were run on this bug * bug is open, matching expected state (open) * bug target version (4.16.z) matches configured target version for branch (4.16.z) * bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, POST) * release note text is set and does not match the template * dependent bug [Jira Issue OCPBUGS-36301](https://issues.redhat.com//browse/OCPBUGS-36301) is in the state Verified, which is one of the valid states (VERIFIED, RELEASE PENDING, CLOSED (ERRATA), CLOSED (CURRENT RELEASE), CLOSED (DONE), CLOSED (DONE-ERRATA)) * dependent [Jira Issue OCPBUGS-36301](https://issues.redhat.com//browse/OCPBUGS-36301) targets the "4.17.0" version, which is one of the valid target versions: 4.17.0 * bug has dependents

Requesting review from QA contact: /cc @geliu2016

In response to [this](https://github.com/openshift/cluster-etcd-operator/pull/1290#issuecomment-2247457141): >/jira refresh Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Fcluster-etcd-operator). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
openshift-ci[bot] commented 3 months ago

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: geliu2016, hasbro17, openshift-cherrypick-robot, wking

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files: - ~~[OWNERS](https://github.com/openshift/cluster-etcd-operator/blob/release-4.16/OWNERS)~~ [hasbro17] Approvers can indicate their approval by writing `/approve` in a comment Approvers can cancel approval by writing `/approve cancel` in a comment
openshift-ci-robot commented 3 months ago

/retest-required

Remaining retests: 0 against base HEAD f8ec2ac5a4a4707771d48fcf5b92c632ac716d43 and 2 for PR HEAD 94d3821a44bc882b920808ece12708f79a4fc0d7 in total

openshift-ci[bot] commented 3 months ago

@openshift-cherrypick-robot: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-aws-etcd-recovery 94d3821a44bc882b920808ece12708f79a4fc0d7 link false /test e2e-aws-etcd-recovery
ci/prow/e2e-operator-fips 94d3821a44bc882b920808ece12708f79a4fc0d7 link false /test e2e-operator-fips

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository. I understand the commands that are listed [here](https://go.k8s.io/bot-commands).
tjungblu commented 3 months ago

/override ci/prow/e2e-aws-ovn-etcd-scaling

known failure

openshift-ci[bot] commented 3 months ago

@tjungblu: Overrode contexts on behalf of tjungblu: ci/prow/e2e-aws-ovn-etcd-scaling

In response to [this](https://github.com/openshift/cluster-etcd-operator/pull/1290#issuecomment-2256202840): >/override ci/prow/e2e-aws-ovn-etcd-scaling > >known failure Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository.
openshift-ci-robot commented 3 months ago

@openshift-cherrypick-robot: Jira Issue OCPBUGS-36489: All pull requests linked via external trackers have merged:

Jira Issue OCPBUGS-36489 has been moved to the MODIFIED state.

In response to [this](https://github.com/openshift/cluster-etcd-operator/pull/1290): >This is an automated cherry-pick of #1286 > >/assign tjungblu > >/cherrypick release-4.15 release-4.14 release-4.13 release-4.12 Instructions for interacting with me using PR comments are available [here](https://prow.ci.openshift.org/command-help?repo=openshift%2Fcluster-etcd-operator). If you have questions or suggestions related to my behavior, please file an issue against the [openshift-eng/jira-lifecycle-plugin](https://github.com/openshift-eng/jira-lifecycle-plugin/issues/new) repository.
openshift-cherrypick-robot commented 3 months ago

@openshift-cherrypick-robot: #1290 failed to apply on top of branch "release-4.15":

Applying: OCPBUGS-36301: parallelize member health checks
Using index info to reconstruct a base tree...
M   pkg/etcdcli/etcdcli.go
M   pkg/etcdcli/health.go
Falling back to patching base and 3-way merge...
Auto-merging pkg/etcdcli/health.go
Auto-merging pkg/etcdcli/etcdcli.go
CONFLICT (content): Merge conflict in pkg/etcdcli/etcdcli.go
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
Patch failed at 0001 OCPBUGS-36301: parallelize member health checks
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".
In response to [this](): >This is an automated cherry-pick of #1286 > >/assign tjungblu > >/cherrypick release-4.15 release-4.14 release-4.13 release-4.12 Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes-sigs/prow](https://github.com/kubernetes-sigs/prow/issues/new?title=Prow%20issue:) repository.
openshift-bot commented 3 months ago

[ART PR BUILD NOTIFIER]

Distgit: cluster-etcd-operator This PR has been included in build cluster-etcd-operator-container-v4.16.0-202407291537.p0.gb0d0d6a.assembly.stream.el9. All builds following this will include this PR.

openshift-merge-robot commented 3 months ago

Fix included in accepted release 4.16.0-0.nightly-2024-07-29-205803