diff --git a/code/index/java/nu/marginalia/index/model/SearchParameters.java b/code/index/java/nu/marginalia/index/model/SearchParameters.java index 097abf10..7d440563 100644 --- a/code/index/java/nu/marginalia/index/model/SearchParameters.java +++ b/code/index/java/nu/marginalia/index/model/SearchParameters.java @@ -63,7 +63,11 @@ public class SearchParameters { var limits = IndexProtobufCodec.convertQueryLimits(request.getQueryLimits()); this.fetchSize = limits.fetchSize(); - this.budget = new IndexSearchBudget(limits.timeoutMs()); + + // The time budget is halved because this is the point when we start to + // wrap up the search and return the results. + this.budget = new IndexSearchBudget(limits.timeoutMs() / 2); + this.subqueries = new ArrayList<>(request.getSubqueriesCount()); for (int i = 0; i < request.getSubqueriesCount(); i++) { this.subqueries.add(IndexProtobufCodec.convertSearchSubquery(request.getSubqueries(i)));