diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2022-03-01 14:37:04 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2022-03-01 14:37:04 +0100 |
commit | f8f24d65c8f0de9f7b4e913285d6efbb96d34954 (patch) | |
tree | b97643dbd32f4f8af3ce000baaf61f1b9773cabc /searchlib | |
parent | c8efa8ed2003e9032adad3b4b3acf912800f7247 (diff) |
Merge grouping results incrementally in search invoker
Diffstat (limited to 'searchlib')
-rw-r--r-- | searchlib/src/main/java/com/yahoo/searchlib/aggregation/Grouping.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/Grouping.java b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/Grouping.java index 25b3cb18ff9..c88a567c559 100644 --- a/searchlib/src/main/java/com/yahoo/searchlib/aggregation/Grouping.java +++ b/searchlib/src/main/java/com/yahoo/searchlib/aggregation/Grouping.java @@ -46,6 +46,8 @@ public class Grouping extends Identifiable { // Actual root group, does not require level details. private Group root = new Group(); + private boolean postMergeCompleted = false; + /** * <p>Constructs an empty result node. <b>NOTE:</b> This instance is broken until non-optional member data is * set.</p> @@ -78,7 +80,9 @@ public class Grouping extends Identifiable { * that might have changes due to the merge.</p> */ public void postMerge() { + if (postMergeCompleted) return; root.postMerge(groupingLevels, firstLevel, 0); + postMergeCompleted = true; } /** |