diff options
-rw-r--r-- | dependency-versions/pom.xml | 6 | ||||
-rw-r--r-- | streamingvisitors/src/vespa/vsm/searcher/strchrfieldsearcher.cpp | 46 |
2 files changed, 26 insertions, 26 deletions
diff --git a/dependency-versions/pom.xml b/dependency-versions/pom.xml index 6c28c31146e..fc4887e8a9c 100644 --- a/dependency-versions/pom.xml +++ b/dependency-versions/pom.xml @@ -58,15 +58,15 @@ <antlr4.vespa.version>4.13.1</antlr4.vespa.version> <apache.httpclient.vespa.version>4.5.14</apache.httpclient.vespa.version> <apache.httpcore.vespa.version>4.4.16</apache.httpcore.vespa.version> - <apache.httpclient5.vespa.version>5.3</apache.httpclient5.vespa.version> + <apache.httpclient5.vespa.version>5.3.1</apache.httpclient5.vespa.version> <apache.httpcore5.vespa.version>5.2.4</apache.httpcore5.vespa.version> <apiguardian.vespa.version>1.1.2</apiguardian.vespa.version> <asm.vespa.version>9.6</asm.vespa.version> - <assertj.vespa.version>3.25.1</assertj.vespa.version> + <assertj.vespa.version>3.25.2</assertj.vespa.version> <!-- Athenz dependencies. Make sure these dependencies match those in Vespa's internal repositories --> <athenz.vespa.version>1.11.50</athenz.vespa.version> - <aws-sdk.vespa.version>1.12.643</aws-sdk.vespa.version> + <aws-sdk.vespa.version>1.12.644</aws-sdk.vespa.version> <!-- Athenz END --> <!-- WARNING: If you change curator version, you also need to update diff --git a/streamingvisitors/src/vespa/vsm/searcher/strchrfieldsearcher.cpp b/streamingvisitors/src/vespa/vsm/searcher/strchrfieldsearcher.cpp index 98e88e45b3a..ba52444101d 100644 --- a/streamingvisitors/src/vespa/vsm/searcher/strchrfieldsearcher.cpp +++ b/streamingvisitors/src/vespa/vsm/searcher/strchrfieldsearcher.cpp @@ -25,36 +25,36 @@ void StrChrFieldSearcher::onValue(const document::FieldValue & fv) bool StrChrFieldSearcher::matchDoc(const FieldRef & fieldRef) { - if (_qtl.size() > 1) { - size_t mintsz = shortestTerm(); - if (fieldRef.size() >= mintsz) { - _words += matchTerms(fieldRef, mintsz); + if (_qtl.size() > 1) { + size_t mintsz = shortestTerm(); + if (fieldRef.size() >= mintsz) { + _words += matchTerms(fieldRef, mintsz); + } else { + _words += countWords(fieldRef); + } } else { - _words += countWords(fieldRef); + for (auto qt : _qtl) { + if (fieldRef.size() >= qt->termLen() || qt->isRegex() || qt->isFuzzy()) { + _words += matchTerm(fieldRef, *qt); + } else { + _words += countWords(fieldRef); + } + } } - } else { - for (auto qt : _qtl) { - if (fieldRef.size() >= qt->termLen() || qt->isRegex() || qt->isFuzzy()) { - _words += matchTerm(fieldRef, *qt); - } else { - _words += countWords(fieldRef); - } - } - } - return true; + return true; } size_t StrChrFieldSearcher::shortestTerm() const { - size_t mintsz(_qtl.front()->termLen()); - for (auto it=_qtl.begin()+1, mt=_qtl.end(); it != mt; it++) { - const QueryTerm & qt = **it; - if (qt.isRegex() || qt.isFuzzy()) { - return 0; // Must avoid "too short query term" optimization when using regex or fuzzy + size_t mintsz(_qtl.front()->termLen()); + for (auto it=_qtl.begin()+1, mt=_qtl.end(); it != mt; it++) { + const QueryTerm & qt = **it; + if (qt.isRegex() || qt.isFuzzy()) { + return 0; // Must avoid "too short query term" optimization when using regex or fuzzy + } + mintsz = std::min(mintsz, qt.termLen()); } - mintsz = std::min(mintsz, qt.termLen()); - } - return mintsz; + return mintsz; } } |