diff options
author | Tor Egge <Tor.Egge@online.no> | 2023-11-30 12:44:39 +0100 |
---|---|---|
committer | Tor Egge <Tor.Egge@online.no> | 2023-11-30 12:44:39 +0100 |
commit | 88d3e7ce533f47b9b991a3262ee2c77445ff591a (patch) | |
tree | 67e782aa664caa52abcc76204b51f23a1dfcd530 /searchsummary | |
parent | 690f060bf5b5b5a22d747ecd5c8a66179dd4bd58 (diff) |
Keep arity of parent in sync when making juniper query from stack dump.
Diffstat (limited to 'searchsummary')
-rw-r--r-- | searchsummary/src/vespa/juniper/queryvisitor.cpp | 5 | ||||
-rw-r--r-- | searchsummary/src/vespa/searchsummary/docsummary/juniper_query_adapter.cpp | 3 |
2 files changed, 6 insertions, 2 deletions
diff --git a/searchsummary/src/vespa/juniper/queryvisitor.cpp b/searchsummary/src/vespa/juniper/queryvisitor.cpp index 73301f3119f..ef88fd79f6f 100644 --- a/searchsummary/src/vespa/juniper/queryvisitor.cpp +++ b/searchsummary/src/vespa/juniper/queryvisitor.cpp @@ -210,6 +210,7 @@ void QueryVisitor::VisitKeyword(const QueryItem* item, const char* keyword, { if (length == 0) { // Do not consider empty terms. + insert(nullptr); // keep arity of parent in sync! return; } juniper::ItemCreator creator = item->get_creator(); @@ -220,7 +221,7 @@ void QueryVisitor::VisitKeyword(const QueryItem* item, const char* keyword, break; default: /** Keep track of eliminated children to have correct arity in rep. */ - insert(NULL); + insert(nullptr); if (LOG_WOULD_LOG(debug)) { std::string s(keyword, length); std::string ind = get_index(item); @@ -237,7 +238,7 @@ void QueryVisitor::VisitKeyword(const QueryItem* item, const char* keyword, std::string ind = get_index(item); LOG(debug, "juniper: VisitKeyword(%s:%s) - not applicable index", ind.c_str(), s.c_str()); } - insert(NULL); // keep arity of parent in sync! + insert(nullptr); // keep arity of parent in sync! return; } if (LOG_WOULD_LOG(debug)) { diff --git a/searchsummary/src/vespa/searchsummary/docsummary/juniper_query_adapter.cpp b/searchsummary/src/vespa/searchsummary/docsummary/juniper_query_adapter.cpp index 4e158ff595a..4e29a9a2f0b 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/juniper_query_adapter.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/juniper_query_adapter.cpp @@ -136,6 +136,9 @@ JuniperQueryAdapter::Traverse(juniper::IQueryVisitor *v) const case search::ParseItem::ITEM_SAME_ELEMENT: case search::ParseItem::ITEM_NEAREST_NEIGHBOR: case search::ParseItem::ITEM_GEO_LOCATION_TERM: + case search::ParseItem::ITEM_FUZZY: + case search::ParseItem::ITEM_STRING_IN: + case search::ParseItem::ITEM_NUMERIC_IN: if (!v->VisitOther(&item, iterator.getArity())) { rc = skipItem(&iterator); } |