fix: avoid 409 Conflict races in integration test status updates (#832)
The 'Test default progressing state' integration test misuses gomega.Eventually by passing the result of k8sClient.Status().Update directly, so Update is only invoked once and Eventually keeps re-checking the same already-resolved error. When the reconciler updates the LWS status concurrently, the single attempt hits a 409 Conflict and the test times out after 120s. The SetStatefulsetToUnReady test helper has the same class of bug: the caller does a Get first and then this helper issues a single Status().Update on the (potentially already-stale) object, so any concurrent reconciler write produces a 409. Wrap both updates in an Eventually polling closure that re-Gets the latest object on every retry and re-issues Status().Update, matching the canonical pattern used in kueue and jobset integration tests. Signed-off-by: Kay Yan <kay.yan@daocloud.io>
K
Kay Yan committed
e5652458f1cfa58a0b9df64146520f22da751f26
Parent: 2b84d28
Committed by GitHub <noreply@github.com>
on 4/29/2026, 6:01:27 PM