jainankitk commented on issue #14375:
URL: https://github.com/apache/lucene/issues/14375#issuecomment-2739471091

   > Maybe it tries to do too much by providing min/avg/max aggregates and it 
should just provide per-slice breakdowns, leaving whether and how to compile 
aggregates to the application?
   
   I agree with you, especially when the number of slices is < 5. In those 
cases, we are outputting almost the same number of metrics across all the 
slices, without having this lossy reduction
   
   > Out of curiosity, how do you know if two calls to advance() come from the 
same slice or different slices?
   
   The timers are built for each leaf, and we aggregate these timers while 
building profiler output for each slice using `Map<Collector, 
List<LeafReaderContext>> sliceCollectorsToLeaves`. This 
`sliceCollectorToLeaves` is incrementally built as part of the `searchLeaf` 
method. Relies on the fact that we need to use this slice->leaf mapping only 
when we build the final response, by when `searchLeaf` has been invoked for all 
the leaves, and we know which leaves are sharing the collector and are thus, 
part of the same slice.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to