From b492f49c9f82dc38d495a60806afac8eda17f086 Mon Sep 17 00:00:00 2001 From: Aldo Culquicondor Date: Fri, 8 Jul 2022 14:39:59 +0000 Subject: [PATCH] Do not skip job requeue in conflict error Change-Id: Ie97977887a1cc3de58922d73dce92ae1965965bf --- pkg/controller/job/job_controller.go | 7 +------ pkg/controller/job/job_controller_test.go | 4 +++- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/pkg/controller/job/job_controller.go b/pkg/controller/job/job_controller.go index d746ff7c16c..a3673241144 100644 --- a/pkg/controller/job/job_controller.go +++ b/pkg/controller/job/job_controller.go @@ -537,12 +537,7 @@ func (jm *Controller) processNextWorkItem(ctx context.Context) bool { } utilruntime.HandleError(fmt.Errorf("syncing job: %w", err)) - if !apierrors.IsConflict(err) { - // If this was a conflict error, we expect a Job or Pod update event, which - // will add the job back to the queue. Avoiding the rate limited requeue - // saves an unnecessary sync. - jm.queue.AddRateLimited(key) - } + jm.queue.AddRateLimited(key) return true } diff --git a/pkg/controller/job/job_controller_test.go b/pkg/controller/job/job_controller_test.go index a5a93559b71..79227a3b06d 100644 --- a/pkg/controller/job/job_controller_test.go +++ b/pkg/controller/job/job_controller_test.go @@ -2007,11 +2007,13 @@ func TestSyncJobUpdateRequeue(t *testing.T) { wantRequeue: true, }, "conflict error": { - updateErr: apierrors.NewConflict(schema.GroupResource{}, "", nil), + updateErr: apierrors.NewConflict(schema.GroupResource{}, "", nil), + wantRequeue: true, }, "conflict error, with finalizers": { withFinalizers: true, updateErr: apierrors.NewConflict(schema.GroupResource{}, "", nil), + wantRequeue: true, }, } for name, tc := range cases {