Currently global ordinals often if loaded when determine the maximum ordinal in TermsAggregatorFactory#getMaxOrd(...) as part of determining the execution strategy. This happens on a search thread. Before this wasn't an issue because search threads also executed a search, but since recently the search worker is supposed to perform searching and other heavy search related operations and search threads should only coordinate. Loading global ordinals is a heavy operations and should be performed on a search worker thread. This issue is about ensuring that computing global ordinals in aggregation framework to a search worker thread.
Currently global ordinals often if loaded when determine the maximum ordinal in
TermsAggregatorFactory#getMaxOrd(...)
as part of determining the execution strategy. This happens on a search thread. Before this wasn't an issue because search threads also executed a search, but since recently the search worker is supposed to perform searching and other heavy search related operations and search threads should only coordinate. Loading global ordinals is a heavy operations and should be performed on a search worker thread. This issue is about ensuring that computing global ordinals in aggregation framework to a search worker thread.