Skip to content

Commit 5dd6dd7

Browse files
committed
fix(validator): widen Trainer controller readiness timeout
On cold start, the Kubeflow Trainer controller-manager's cert-controller sidecar provisions its webhook cert via a get-or-create against the API server; racing that against a not-yet-synced informer cache produces a resourceVersion conflict on the update. This is expected behavior under cert-controller's optimistic-concurrency retry, not a defect in Trainer or in this validator. The sidecar's own reconcile loop retries and self-heals unassisted. Each retry adds latency, though, and on a slow cold start the cumulative delay can push first-ready past the old 2-minute budget, failing the validator's readiness wait for a controller that was already recovering on its own. Widen to 3 minutes so the wait accommodates the expected retry latency instead of racing it. Signed-off-by: Mike Cook <micook@nvidia.com>
1 parent 1b0f7f7 commit 5dd6dd7

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

pkg/defaults/timeouts.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -667,7 +667,7 @@ const (
667667

668668
// TrainerControllerReadyTimeout is the time to wait for the Kubeflow Trainer
669669
// controller-manager Deployment to have at least one ready replica after installation.
670-
TrainerControllerReadyTimeout = 2 * time.Minute
670+
TrainerControllerReadyTimeout = 3 * time.Minute
671671

672672
// TrainerInstallPollInterval is the sleep between checks that a
673673
// recipe-declared Kubeflow Trainer installation has become complete. The

0 commit comments

Comments
 (0)