From 72542f5b821529fdea22ff20bc5b2a8ba83cc3e1 Mon Sep 17 00:00:00 2001 From: Zihong Zheng Date: Wed, 18 Oct 2017 16:58:19 -0700 Subject: [PATCH] Fix retry logic in service controller --- pkg/controller/service/service_controller.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/controller/service/service_controller.go b/pkg/controller/service/service_controller.go index 0f7c1f686b8..e174f01a959 100644 --- a/pkg/controller/service/service_controller.go +++ b/pkg/controller/service/service_controller.go @@ -244,15 +244,17 @@ func (s *ServiceController) processServiceUpdate(cachedService *cachedService, s err, retry := s.createLoadBalancerIfNeeded(key, service) if err != nil { message := "Error creating load balancer" + var retryToReturn time.Duration if retry { message += " (will retry): " + retryToReturn = cachedService.nextRetryDelay() } else { message += " (will not retry): " + retryToReturn = doNotRetry } message += err.Error() s.eventRecorder.Event(service, v1.EventTypeWarning, "CreatingLoadBalancerFailed", message) - - return err, cachedService.nextRetryDelay() + return err, retryToReturn } // Always update the cache upon success. // NOTE: Since we update the cached service if and only if we successfully