Skip to content

Commit 5defb94

Browse files
cleanup
1 parent 6b26a77 commit 5defb94

File tree

1 file changed

+6
-12
lines changed

1 file changed

+6
-12
lines changed

server/src/main/java/org/elasticsearch/action/search/QueryPhaseResultConsumer.java

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
import org.elasticsearch.action.search.SearchPhaseController.TopDocsStats;
1616
import org.elasticsearch.common.breaker.CircuitBreaker;
1717
import org.elasticsearch.common.breaker.CircuitBreakingException;
18+
import org.elasticsearch.common.collect.Iterators;
1819
import org.elasticsearch.common.io.stream.DelayableWriteable;
1920
import org.elasticsearch.common.lucene.search.TopDocsAndMaxScore;
2021
import org.elasticsearch.common.util.concurrent.AbstractRunnable;
@@ -306,36 +307,29 @@ interface ReleasableIterator extends Iterator<InternalAggregations>, Releasable
306307

307308
private Releasable toRelease;
308309

309-
private boolean onFirst;
310-
311310
@Override
312311
public void close() {
313312
Releasables.close(toRelease);
314313
}
315314

316315
@Override
317316
public boolean hasNext() {
318-
if (onFirst && lastMerge != null) {
319-
return true;
320-
}
321317
return toConsume.hasNext();
322318
}
323319

324320
@Override
325321
public InternalAggregations next() {
326-
if (onFirst) {
327-
onFirst = false;
328-
if (lastMerge != null) {
329-
return lastMerge.reducedAggs;
330-
}
331-
}
332322
var res = toConsume.next().consumeAggs();
333323
Releasables.close(toRelease);
334324
toRelease = res;
335325
return res.expand();
336326
}
337327
}) {
338-
return InternalAggregations.topLevelReduce(aggsIter, resultSetSize, reduceContext);
328+
return InternalAggregations.topLevelReduce(
329+
lastMerge == null ? aggsIter : Iterators.concat(Iterators.single(lastMerge.reducedAggs), aggsIter),
330+
resultSetSize,
331+
reduceContext
332+
);
339333
} finally {
340334
toConsume.forEachRemaining(QuerySearchResult::releaseAggs);
341335
}

0 commit comments

Comments
 (0)