diff options
author | Jon Bratseth <bratseth@gmail.com> | 2022-02-16 17:35:42 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-16 17:35:42 +0100 |
commit | 2f6ed10a4f7c4dcea1d1aebec5c781f60199fc65 (patch) | |
tree | 627e873420acc9219224d107daadae3ee5fe3e0c | |
parent | 155ff762e84235177b7d7b7dd429b207c454415c (diff) | |
parent | 0b3f7e7f9cb1a8bc4f1e7423e77c225762d56da7 (diff) |
Merge pull request #21230 from vespa-engine/arnej/detect-unknown-summary-class
detect and debug log invalid summary class
-rw-r--r-- | container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumDefinitionSet.java | 5 | ||||
-rw-r--r-- | container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcProtobufFillInvoker.java | 5 |
2 files changed, 10 insertions, 0 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumDefinitionSet.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumDefinitionSet.java index df87de2a12b..f0303615e3d 100644 --- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumDefinitionSet.java +++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/DocsumDefinitionSet.java @@ -57,6 +57,11 @@ public final class DocsumDefinitionSet { return ds; } + /** Do we have a summary definition with the given name */ + public boolean hasDocsum(String summaryClass) { + return definitionsByName.containsKey(summaryClass); + } + /** * Makes data available for decoding for the given hit. * diff --git a/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcProtobufFillInvoker.java b/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcProtobufFillInvoker.java index fe74180cad3..7a5ef94069d 100644 --- a/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcProtobufFillInvoker.java +++ b/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcProtobufFillInvoker.java @@ -65,6 +65,11 @@ public class RpcProtobufFillInvoker extends FillInvoker { @Override protected void sendFillRequest(Result result, String summaryClass) { + if (! documentDb.getDocsumDefinitionSet().hasDocsum(summaryClass)) { + // TODO Vespa 8: + // throw new IllegalArgumentException("invalid summary="+summaryClass); + log.fine("invalid presentation.summary="+summaryClass); + } ListMap<Integer, FastHit> hitsByNode = hitsByNode(result); result.getQuery().trace(false, 5, "Sending ", hitsByNode.size(), " summary fetch requests with jrt/protobuf"); |