Repository navigation
Fix BSL count race condition in multi-BSL e2e test - #2498
openshift-merge-bot[bot] merged 1 commit into
Conversation
The BSL count assertion at line 673 uses a synchronous gomega.Expect that can fail when the operator has not finished reconciling after a DPA patch. Replace with gomega.Eventually to poll until all 3 BSLs are present, with a 3-minute timeout and 5-second polling interval. This fixes flaky failures in periodic-ci-openshift-oadp-operator-oadp-1.4-4.18-e2e-test-aws-periodic.
|
Pipeline controller notification This PR uses the pipeline controller for second-stage tests. Selection and triggering follow the repository configuration. Use |
Codecov Report✅ All modified and coverable lines are covered by tests. Please upload reports for the commit 9d0f6ad to get more accurate results. Additional details and impacted files@@ Coverage Diff @@
## oadp-1.4 #2498 +/- ##
=========================================
Coverage 40.03% 40.03%
=========================================
Files 30 30
Lines 5378 5378
=========================================
Hits 2153 2153
Misses 3014 3014
Partials 211 211 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
|
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 configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
|
/retest |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: kaovilai, redhat-chai-bot, shubham-pampattiwar 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 |
|
/retest |
|
@redhat-chai-bot: 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. |
Problem
The periodic job
periodic-ci-openshift-oadp-operator-oadp-1.4-4.18-e2e-test-aws-periodichas been failing with 2 consecutive failures (Oct 18–19) due to a race condition in the multi-BSL e2e test.In
tests/e2e/backup_restore_suite_test.goat line 673, the BSL count assertion uses a synchronousgomega.Expectimmediately after a DPA patch. The operator may not have finished reconciling, soListBSLs()can return a stale count (fewer than 3 BSLs), causing the test to fail.Root Cause
IsReconciledTrue()does not comparegenerationvsobservedGeneration, so it can returnTruefrom a prior reconciliation cycle. The test then proceeds to check the BSL count before all 3 BSLs have been created by the new reconciliation.Fix
Replace the synchronous assertion:
With an asynchronous poll using
gomega.Eventually:The
bslsvariable is re-assigned after theEventuallysucceeds so that downstream code (finding the default BSL) continues to work.Validation
go vet ./tests/e2e/...— passesgo build ./tests/e2e/...— passesFailing job run
https://prow.ci.openshift.org/view/gs/test-platform-results/logs/periodic-ci-openshift-oadp-operator-oadp-1.4-4.18-e2e-test-aws-periodic/2112031248795832320
AI-generated. Review for accuracy.
@kaovilai requested from Slack