This is a spinn-off from #23253 where we introduced the initial infrastructure to reduce search requests incrementally rather than once all responses are received. For terms aggs we need to maintain all buckets until we received all responses to maintain the same results. It might be a good tradeoff to loose some additional precision if # of shards is large in order to free memory sooner.