summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon Bratseth <jonbratseth@yahoo.com>2017-06-22 08:03:15 +0200
committerGitHub <noreply@github.com>2017-06-22 08:03:15 +0200
commit980c9dd83f95b634c0c6d738edcdbad0e235aeaf (patch)
tree436529ecc5018ed7b9a3e7430b9dcbc26b2c18e0
parent5bc6e2d521a56b6cf1ae87855d03013ddda59bef (diff)
parent4bb8eefecdcbbe78e2c0687fc360d75573e6d241 (diff)
Merge pull request #2854 from yahoo/balder/avoid-sorting-when-not-necessary
Avoid the implicit sorting that deepIterator does as a sideeffect.
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/fastsearch/FastHit.java3
-rw-r--r--container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java4
2 files changed, 4 insertions, 3 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 2e44015b0ce..e0d18f2b571 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
@@ -143,7 +143,8 @@ public class FastHit extends Hit {
if (useRowInIndexUri)
rowString = String.valueOf(getRow());
- return new URI("index:" + getSourceNumber() + "/" + getColumn() + "/" + rowString + "/" + asHexString(getGlobalId()));
+ indexUri = new URI("index:" + getSourceNumber() + "/" + getColumn() + "/" + rowString + "/" + asHexString(getGlobalId()));
+ return indexUri;
}
/** Returns the global id of this document in the backend node which produced it */
diff --git a/container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java b/container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java
index 9af684cf418..fb003463dba 100644
--- a/container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java
+++ b/container-search/src/main/java/com/yahoo/search/dispatch/Dispatcher.java
@@ -92,9 +92,9 @@ public class Dispatcher extends AbstractComponent {
}
/** Return a map of hits by their search node (partition) id */
- private ListMap<Integer, FastHit> hitsByNode(Result result) {
+ private static ListMap<Integer, FastHit> hitsByNode(Result result) {
ListMap<Integer, FastHit> hitsByPartition = new ListMap<>();
- for (Iterator<Hit> i = result.hits().deepIterator() ; i.hasNext(); ) {
+ for (Iterator<Hit> i = result.hits().unorderedDeepIterator() ; i.hasNext(); ) {
Hit h = i.next();
if ( ! (h instanceof FastHit)) continue;
FastHit hit = (FastHit)h;