OCPBUGS-104451: [release-4.22] fix fencing_validator ocdebug fence dispatch race condition - #6360
Conversation
|
Pipeline controller notification For optional jobs, comment This repository is configured in: LGTM mode |
|
@openshift-cherrypick-robot: Ignoring requests to cherry-pick non-bug issues: OCPEDGE-2826 DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository: openshift/coderabbit/.coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
The fence() function's compound command for the ocdebug transport used `A && B || C & disown`, where the `& disown` was intended only for the nohup fallback (C). However, bash parses `&` as a list terminator that backgrounds the entire AND-OR list, not just the last pipeline. This caused the oc debug pod to exit immediately after backgrounding the compound command, and pod cleanup killed the systemd-run process before it could dispatch the fence unit to systemd. The fence never happened but the script saw exit 0. Replace the `&&/||` compound with an explicit if/else so that `& disown` is correctly scoped to only the nohup fallback branch. Also switch to `--no-block` for systemd-run so it returns immediately after dispatching the unit, avoiding any timeout interaction with the oc debug session. Tested on a live TNF cluster: the patched script successfully fences both nodes sequentially and completes the full disruptive validation, whereas the unpatched script times out waiting for the first node to become NotReady. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Without --collect, a failed or completed transient unit stays loaded and a subsequent fence attempt for the same target would fail because the unit name already exists. Adding --collect alongside --no-block ensures the unit is garbage-collected after completion. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
82b828c to
37382c1
Compare
|
/test unit |
1 similar comment
|
/test unit |
isabella-janssen
left a comment
There was a problem hiding this comment.
/lgtm
/label backport-risk-assessed
Clean BP
/test unit
|
Scheduling tests matching the |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: isabella-janssen, openshift-cherrypick-robot The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
/test unit |
4 similar comments
|
/test unit |
|
/test unit |
|
/test unit |
|
/test unit |
|
/test unit |
|
@openshift-cherrypick-robot: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
/verified by ci |
|
/jira refresh |
|
@Neilhamza: This PR has been marked as verified by DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
@Neilhamza: This pull request references OCPEDGE-2826 which is a valid jira issue. Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target either version "4.22." or "openshift-4.22.", but it targets "openshift-4.23" instead. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@Neilhamza: This pull request references OCPEDGE-2826 which is a valid jira issue. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@Neilhamza: This pull request references OCPEDGE-2826 which is a valid jira issue. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@Neilhamza: This pull request references OCPEDGE-2826 which is a valid jira issue. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/retitle OCPBUGS-104451: [release-4.22] fix fencing_validator ocdebug fence dispatch race condition |
|
@openshift-cherrypick-robot: This pull request references Jira Issue OCPBUGS-104451, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@Neilhamza: This pull request references Jira Issue OCPBUGS-104451, which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@Neilhamza: This pull request references Jira Issue OCPBUGS-104451, which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@Neilhamza: This pull request references Jira Issue OCPBUGS-104451, which is invalid:
Comment DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
|
/jira refresh |
|
@Neilhamza: This pull request references Jira Issue OCPBUGS-104451, which is valid. The bug has been moved to the POST state. 7 validation(s) were run on this bug
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
19b3e93
into
openshift:release-4.22
|
@openshift-cherrypick-robot: Jira Issue Verification Checks: Jira Issue OCPBUGS-104451 Jira Issue OCPBUGS-104451 has been moved to the MODIFIED state and will move to the VERIFIED state when the change is available in an accepted nightly payload. 🕓 DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository. |
This is an automated cherry-pick of #6341
/assign Neilhamza