aboutsummaryrefslogtreecommitdiffstats
path: root/vespaclient-container-plugin
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2021-10-20 16:38:03 +0200
committerJon Marius Venstad <venstad@gmail.com>2021-10-20 16:38:03 +0200
commite0cd56a9e8939097a177896d36ae2ba0a83591d1 (patch)
tree833fe69588fb54195d6e6a8c1e9d8213ae35b131 /vespaclient-container-plugin
parent85b973c8d7614070b724bee57e22439682983bbe (diff)
Allow unbounded document count (also by default) when streaming
Diffstat (limited to 'vespaclient-container-plugin')
-rw-r--r--vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java b/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java
index 77e84cffd25..833131d581d 100644
--- a/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java
+++ b/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java
@@ -364,8 +364,8 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler {
private ContentChannel getDocuments(HttpRequest request, DocumentPath path, ResponseHandler handler) {
enqueueAndDispatch(request, handler, () -> {
- VisitorParameters parameters = parseGetParameters(request, path);
boolean streaming = getProperty(request, STREAMING, booleanParser).orElse(false);
+ VisitorParameters parameters = parseGetParameters(request, path, streaming);
return () -> {
visitAndWrite(request, parameters, handler, streaming);
return true; // VisitorSession has its own throttle handling.
@@ -972,8 +972,10 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler {
// ------------------------------------------------- Visits ------------------------------------------------
- private VisitorParameters parseGetParameters(HttpRequest request, DocumentPath path) {
- int wantedDocumentCount = Math.min(1 << 10, getProperty(request, WANTED_DOCUMENT_COUNT, integerParser).orElse(1));
+ private VisitorParameters parseGetParameters(HttpRequest request, DocumentPath path, boolean streaming) {
+ int wantedDocumentCount = Math.min(streaming ? Integer.MAX_VALUE : 1 << 10,
+ getProperty(request, WANTED_DOCUMENT_COUNT, integerParser)
+ .orElse(streaming ? Integer.MAX_VALUE : 1));
if (wantedDocumentCount <= 0)
throw new IllegalArgumentException("wantedDocumentCount must be positive");