From 942c92856bc211250535170dc03d3a9a25cdade7 Mon Sep 17 00:00:00 2001 From: Haakon Dybdahl Date: Thu, 26 Jan 2017 08:57:28 +0100 Subject: Reduce number of error codes over http api, not yet live. --- .../src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'vespaclient-container-plugin/src') diff --git a/vespaclient-container-plugin/src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java b/vespaclient-container-plugin/src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java index d27ebc551d9..2b33c23cf5f 100644 --- a/vespaclient-container-plugin/src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java +++ b/vespaclient-container-plugin/src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java @@ -133,7 +133,13 @@ class ClientFeederV3 { * We try 10 for now. This should only kick in with very massive feeding to few gateway nodes. */ if (feederSettings.denyIfBusy && threadsAvailableForFeeding.get() < -10) { - return new ErrorHttpResponse(429, "Gateway overloaded"); + final int returnCode; + if (request.getHeader(Headers.SILENTUPGRADE) != null ) { + returnCode = 299; + } else { + returnCode = 429; + } + return new ErrorHttpResponse(returnCode, "Gateway overloaded"); } InputStream inputStream = StreamReaderV3.unzipStreamIfNeeded(request); -- cgit v1.2.3 From 29e2f5bcd58d287bc6e18cac7247801f1945f52d Mon Sep 17 00:00:00 2001 From: Haakon Dybdahl Date: Thu, 26 Jan 2017 11:18:16 +0100 Subject: Clean up code a bit --- .../java/com/yahoo/vespa/http/server/ClientFeederV3.java | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'vespaclient-container-plugin/src') diff --git a/vespaclient-container-plugin/src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java b/vespaclient-container-plugin/src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java index 2b33c23cf5f..301b81f040c 100644 --- a/vespaclient-container-plugin/src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java +++ b/vespaclient-container-plugin/src/main/java/com/yahoo/vespa/http/server/ClientFeederV3.java @@ -133,13 +133,7 @@ class ClientFeederV3 { * We try 10 for now. This should only kick in with very massive feeding to few gateway nodes. */ if (feederSettings.denyIfBusy && threadsAvailableForFeeding.get() < -10) { - final int returnCode; - if (request.getHeader(Headers.SILENTUPGRADE) != null ) { - returnCode = 299; - } else { - returnCode = 429; - } - return new ErrorHttpResponse(returnCode, "Gateway overloaded"); + return new ErrorHttpResponse(getOverloadReturnCode(request), "Gateway overloaded"); } InputStream inputStream = StreamReaderV3.unzipStreamIfNeeded(request); @@ -172,6 +166,13 @@ class ClientFeederV3 { } } + private int getOverloadReturnCode(HttpRequest request) { + if (request.getHeader(Headers.SILENTUPGRADE) != null ) { + return 299; + } + return 429; + } + private Optional pullMessageFromRequest( FeederSettings settings, InputStream requestInputStream, BlockingQueue repliesFromOldMessages) { while (true) { -- cgit v1.2.3