diff options
author | Harald Musum <musum@yahooinc.com> | 2024-03-08 06:54:50 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-08 06:54:50 +0100 |
commit | 38554f48dd242c4a9d269927b374708ba4d97bdf (patch) | |
tree | 986ef38f02d3f009768b34478f0e06199158c4b2 | |
parent | a73e75438069f0e6422ddd40d2fd5f9dce8a75eb (diff) | |
parent | 2e4a99ba15d05d3806f115ce4912b0741cc70731 (diff) |
Merge pull request #30511 from vespa-engine/balder/take-schema-from-query
Get the schema from the query
3 files changed, 6 insertions, 7 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java b/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java index 3822fa575d6..f481d58d334 100644 --- a/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java +++ b/container-search/src/main/java/com/yahoo/prelude/cluster/ClusterSearcher.java @@ -151,7 +151,6 @@ public class ClusterSearcher extends Searcher { ClusterParams clusterParams = makeClusterParams(searchclusterIndex); StreamingSearcher searcher = new StreamingSearcher(access); searcher.setSearchClusterName(searchClusterConfig.rankprofiles_configid()); - searcher.setDocumentType(searchClusterConfig.searchdef(0)); searcher.setStorageClusterRouteSpec(searchClusterConfig.storagecluster().routespec()); searcher.init(serverId, docSumParams, clusterParams, documentdbInfoConfig, schemaInfo); return searcher; diff --git a/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/StreamingSearcher.java b/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/StreamingSearcher.java index e5674a80eac..180fdc389d8 100644 --- a/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/StreamingSearcher.java +++ b/container-search/src/main/java/com/yahoo/vespa/streamingvisitors/StreamingSearcher.java @@ -59,7 +59,6 @@ public class StreamingSearcher extends VespaBackEndSearcher { /** The configId used to access the searchcluster. */ private String searchClusterName = null; - private String documentType; /** The route to the storage cluster. */ private String storageClusterRouteSpec = null; @@ -81,9 +80,6 @@ public class StreamingSearcher extends VespaBackEndSearcher { private String getSearchClusterName() { return searchClusterName; } private String getStorageClusterRouteSpec() { return storageClusterRouteSpec; } public final void setSearchClusterName(String clusterName) { this.searchClusterName = clusterName; } - public final void setDocumentType(String documentType) { - this.documentType = documentType; - } public final void setStorageClusterRouteSpec(String storageClusterRouteSpec) { this.storageClusterRouteSpec = storageClusterRouteSpec; @@ -139,12 +135,15 @@ public class StreamingSearcher extends VespaBackEndSearcher { return new Result(query, ErrorMessage.createIllegalQuery("Streaming search requires either " + "streaming.groupname or streaming.selection")); } + // Cluster searcher guarantees that there will be one, and only one schema here + String schema = query.getModel().getRestrict().iterator().next(); + if (query.getTrace().isTraceable(4)) - query.trace("Routing to search cluster " + getSearchClusterName() + " and document type " + documentType, 4); + query.trace("Routing to search cluster " + getSearchClusterName() + " and document type " + schema, 4); long timeStartedNanos = tracingOptions.getClock().nanoTimeNow(); int effectiveTraceLevel = inferEffectiveQueryTraceLevel(query); - Visitor visitor = visitorFactory.createVisitor(query, getSearchClusterName(), route, documentType, effectiveTraceLevel); + Visitor visitor = visitorFactory.createVisitor(query, getSearchClusterName(), route, schema, effectiveTraceLevel); try { visitor.doSearch(); } catch (ParseException e) { diff --git a/container-search/src/test/java/com/yahoo/vespa/streamingvisitors/StreamingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/vespa/streamingvisitors/StreamingSearcherTestCase.java index 8d8e24922b1..3d9a958c757 100644 --- a/container-search/src/test/java/com/yahoo/vespa/streamingvisitors/StreamingSearcherTestCase.java +++ b/container-search/src/test/java/com/yahoo/vespa/streamingvisitors/StreamingSearcherTestCase.java @@ -162,6 +162,7 @@ public class StreamingSearcherTestCase { private static Result executeQuery(StreamingSearcher searcher, Query query) { Execution execution = new Execution(Execution.Context.createContextStub()); + query.getModel().setRestrict("test"); return searcher.doSearch2(query, execution); } |