summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2023-03-21 09:17:32 +0100
committerHenning Baldersheim <balder@yahoo-inc.com>2023-03-21 09:17:32 +0100
commit4e99438d7b334986354999503c689963858d9f30 (patch)
tree143e3d6686155d08f9202654ff174014a8f51a57
parent7f95690a3e658184a84f52ffa1be178768262f03 (diff)
Avoid using Hit.fields()
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/FastHit.java2
-rw-r--r--container-search/src/main/java/com/yahoo/search/grouping/result/FlatteningSearcher.java5
-rw-r--r--container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java7
3 files changed, 8 insertions, 6 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/fastsearch/FastHit.java b/container-search/src/main/java/com/yahoo/prelude/fastsearch/FastHit.java
index 47982174d4f..a5fe73dfc5d 100644
--- a/container-search/src/main/java/com/yahoo/prelude/fastsearch/FastHit.java
+++ b/container-search/src/main/java/com/yahoo/prelude/fastsearch/FastHit.java
@@ -53,7 +53,7 @@ public class FastHit extends Hit {
* This ensures that values set from code overwrites any value received as
* summary data, and fetching a new summary overrides previous summaries.
*
- * The reason we keep this rather than eagerly decoding into a the field map
+ * The reason we keep this rather than eagerly decoding into a field map
* is to reduce garbage collection and decoding cost, with the assumption
* that most fields passes through the container with no processing most
* of the time.
diff --git a/container-search/src/main/java/com/yahoo/search/grouping/result/FlatteningSearcher.java b/container-search/src/main/java/com/yahoo/search/grouping/result/FlatteningSearcher.java
index 30dee0e540e..e56b88c3d3e 100644
--- a/container-search/src/main/java/com/yahoo/search/grouping/result/FlatteningSearcher.java
+++ b/container-search/src/main/java/com/yahoo/search/grouping/result/FlatteningSearcher.java
@@ -45,8 +45,9 @@ public class FlatteningSearcher extends Searcher {
// If we count the number of unique groups, use that as total hit count.
if (level == 0 && (hit instanceof RootGroup)) {
- if (hit.fields().get("count()") != null)
- result.setTotalHitCount((long)hit.fields().get("count()"));
+ Object countField = hit.getField("count()");
+ if (countField != null)
+ result.setTotalHitCount((long)countField);
}
if (hit instanceof HitGroup) {
diff --git a/container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java b/container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java
index f8fdfb34ca0..06fa3982b18 100644
--- a/container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java
+++ b/container-search/src/main/java/com/yahoo/search/searchchain/testutil/DocumentSourceSearcher.java
@@ -4,6 +4,7 @@ package com.yahoo.search.searchchain.testutil;
import java.util.Collection;
import java.util.HashSet;
+import java.util.Iterator;
import java.util.Set;
import java.util.Map;
import java.util.HashMap;
@@ -145,9 +146,9 @@ public class DocumentSourceSearcher extends Searcher {
copyFieldValuesThatExist(filledHit,hitToFill,fieldsToFill);
} else {
// TODO: remove this block and update fieldsToFill above to throw an exception if no appropriate summary class is found
- for (Map.Entry<String,Object> propertyEntry : filledHit.fields().entrySet()) {
- hitToFill.setField(propertyEntry.getKey(),
- propertyEntry.getValue());
+ for (var iter = filledHit.fieldIterator(); iter.hasNext();) {
+ var propertyEntry = iter.next();
+ hitToFill.setField(propertyEntry.getKey(), propertyEntry.getValue());
}
}
hitToFill.setFilled(summaryClass == null ? DEFAULT_SUMMARY_CLASS : summaryClass);