Numeric range query way slower (3.5 vs 3.1)
Hi,
I'm trying to upgrade from Lucene (java) version 3.1 to 3.5 and see a performance drop in 3.5 compared to 3.1 (3x faster in 3.1) when doing numeric range queries. Profiling shows that an enormous amount of BooleanScorer$Bucket objects are created in 3.5 and none in 3.1.
Am I the only one observing this or is it a general issue. Is there any workaround for the performance issue?
Best,
Mattias
Re: Numeric range query way slower (3.5 vs 3.1)
It's mostly in unsorted range queries... for sorted range queries 3.5 seems to be just a tad slower than 3.1. I found this in 3.5 (BooleanScorer.java:160-162)
for(int idx=0;idx<SIZE;idx++) {
buckets[idx] = new Bucket();
}
eager initialization of (1 << 11 = 2048) Bucket objects for each BooleanScorer, and that's what seems to kill the performance.