summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2020-01-24 12:32:44 +0100
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2020-01-27 11:06:57 +0100
commitf90d7a4984dd8b5a8fd2b8203a97470f7a56434f (patch)
treea3189eac79d6c724e13d389ce9f8eb21769a3d01
parentc8d002bc409766dfc3ae8e0022a46f4f454afc56 (diff)
Use DelayedHttpRequestRetryHandler in FlagsClient
Retry http requests on connection related failures
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/FlagsClient.java5
1 files changed, 5 insertions, 0 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/FlagsClient.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/FlagsClient.java
index 5cd6b32d572..992d0754cc5 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/FlagsClient.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/systemflags/FlagsClient.java
@@ -1,6 +1,7 @@
// Copyright 2019 Oath Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.hosted.controller.restapi.systemflags;
+import ai.vespa.util.http.retry.DelayedHttpRequestRetryHandler;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yahoo.vespa.athenz.api.AthenzIdentity;
import com.yahoo.vespa.athenz.identity.ServiceIdentityProvider;
@@ -84,6 +85,9 @@ class FlagsClient {
private static CloseableHttpClient createClient(ServiceIdentityProvider identityProvider, Set<FlagsTarget> targets) {
+ DelayedHttpRequestRetryHandler retryHandler = DelayedHttpRequestRetryHandler.Builder
+ .withExponentialBackoff(Duration.ofSeconds(1), Duration.ofSeconds(20), 5)
+ .build();
return HttpClientBuilder.create()
.setUserAgent("controller-flags-v1-client")
.setRetryHandler(new DefaultHttpRequestRetryHandler(5, /*retry on non-idempotent requests*/true))
@@ -96,6 +100,7 @@ class FlagsClient {
.build())
.setMaxConnPerRoute(2)
.setMaxConnTotal(100)
+ .setRetryHandler(retryHandler)
.build();
}