aboutsummaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/search
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2024-06-03 18:49:49 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2024-06-03 18:49:49 +0200
commit7f18f3e76497466da291e92844441554f8c24680 (patch)
tree2c79a695fb00c2049474181afe6fa69ca9adb73c /container-search/src/main/java/com/yahoo/search
parent31bec51433fc9bb7edc0ab4345eecf14e2387242 (diff)
Use targetHits from WeakAnd directly. Also add tracing of fallback to weakAnd
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search')
-rw-r--r--container-search/src/main/java/com/yahoo/search/searchers/OpportunisticWeakAndSearcher.java7
1 files changed, 3 insertions, 4 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/searchers/OpportunisticWeakAndSearcher.java b/container-search/src/main/java/com/yahoo/search/searchers/OpportunisticWeakAndSearcher.java
index c512e821128..11c7dce9984 100644
--- a/container-search/src/main/java/com/yahoo/search/searchers/OpportunisticWeakAndSearcher.java
+++ b/container-search/src/main/java/com/yahoo/search/searchers/OpportunisticWeakAndSearcher.java
@@ -15,8 +15,6 @@ import com.yahoo.search.Searcher;
import com.yahoo.search.querytransform.WeakAndReplacementSearcher;
import com.yahoo.search.searchchain.Execution;
-import static com.yahoo.search.querytransform.WeakAndReplacementSearcher.WAND_HITS;
-
/**
* Will opportunistically replace the WeakAND with an AND as it is faster.
* If enough hits are returned all is good and we return. If not we fall back to the original query.
@@ -38,12 +36,13 @@ public class OpportunisticWeakAndSearcher extends Searcher {
int targetHits = targetHits(originalRoot);
if (targetHits >= 0) {
query.getModel().getQueryTree().setRoot(weakAnd2AndRecurse(originalRoot.clone()));
- query.trace("WeakAND => AND", true, 2);
+ query.trace("WeakAND(" + targetHits+ ") => AND", true, 2);
Result result = execution.search(query);
- if (result.getHitCount() >= query.properties().getInteger(WAND_HITS)) {
+ if (result.getConcreteHitCount() >= targetHits) {
return result;
}
query.getModel().getQueryTree().setRoot(originalRoot);
+ query.trace("Fallback to WeakAND(" + targetHits+ ") as AND => " + result, true, 2);
return execution.search(query);
}
return execution.search(query);