summaryrefslogtreecommitdiffstats
path: root/configserver
diff options
context:
space:
mode:
authorHarald Musum <musum@oath.com>2018-01-09 16:59:21 +0100
committerHarald Musum <musum@oath.com>2018-01-09 16:59:21 +0100
commitbaa2a66a24b21de192a30d534eff105c997e7b12 (patch)
tree9fce9ae22f1daedfa1916a378ca1becc8b3faac1 /configserver
parent7a3f9c6f8818ea5f3763c71db649dd242fd325c3 (diff)
Support milliscond resolution for timeout request parameter
Diffstat (limited to 'configserver')
-rw-r--r--configserver/src/main/java/com/yahoo/vespa/config/server/http/HttpHandler.java2
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/http/HttpHandlerTest.java16
2 files changed, 13 insertions, 5 deletions
diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/http/HttpHandler.java b/configserver/src/main/java/com/yahoo/vespa/config/server/http/HttpHandler.java
index 5208853dcde..ac35e21bdf5 100644
--- a/configserver/src/main/java/com/yahoo/vespa/config/server/http/HttpHandler.java
+++ b/configserver/src/main/java/com/yahoo/vespa/config/server/http/HttpHandler.java
@@ -72,7 +72,7 @@ public class HttpHandler extends LoggingRequestHandler {
return defaultTimeout;
}
try {
- return Duration.ofSeconds((long) Double.parseDouble(request.getProperty("timeout")));
+ return Duration.ofMillis((long) (Double.parseDouble(request.getProperty("timeout")) * 1000));
} catch (Exception e) {
return defaultTimeout;
}
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/http/HttpHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/http/HttpHandlerTest.java
index bf881e7a546..be0623789c2 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/http/HttpHandlerTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/http/HttpHandlerTest.java
@@ -3,7 +3,6 @@ package com.yahoo.vespa.config.server.http;
import com.yahoo.container.jdisc.HttpRequest;
import com.yahoo.container.jdisc.HttpResponse;
-import com.yahoo.container.logging.AccessLog;
import com.yahoo.jdisc.Response;
import com.yahoo.slime.JsonDecoder;
import com.yahoo.slime.Slime;
@@ -11,15 +10,15 @@ import org.junit.Test;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
-import java.util.concurrent.Executor;
-import java.util.concurrent.Executors;
+import java.time.Duration;
+import java.util.Collections;
import static org.hamcrest.CoreMatchers.is;
+import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThat;
/**
* @author lulf
- * @since 5.34
*/
public class HttpHandlerTest {
@Test
@@ -36,6 +35,15 @@ public class HttpHandlerTest {
assertThat(data.get().field("message").asString(), is(message));
}
+ @Test
+ public void testTimeoutParameter() {
+ assertEquals(1500, HttpTestHandler.getRequestTimeout(
+ HttpRequest.createTestRequest("foo",
+ com.yahoo.jdisc.http.HttpRequest.Method.GET,
+ null,
+ Collections.singletonMap("timeout", "1.5")), Duration.ofSeconds(5)).toMillis());
+ }
+
private static class HttpTestHandler extends HttpHandler {
private RuntimeException exception;
public HttpTestHandler(RuntimeException exception) {