Description
When all the docs in a leaf node have the same value, range queries can waste a lot of processing if the node itself returns CELL_CROSSES_QUERY when compare() is called, in effect performing the same calculation in visit(int, byte[]) over and over again. In the case I'm looking at (very low cardinality indexed LongRange fields), this causes something of a perfect storm for performance. PointValues can detect up front if a given node has a single value (because it's min value and max value will be equal), so this case should be fairly simple to identify and shortcut.