Skip to content

Commit 03a21e1

Browse files
committed
Use TermQuery lead in benchmark to force DenseConjunction path
1 parent 67527a6 commit 03a21e1

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

lucene/benchmark-jmh/src/java/org/apache/lucene/benchmark/jmh/SortedNumericGcdRangeIntoBitSetBenchmark.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,18 @@
2424
import java.util.concurrent.TimeUnit;
2525
import java.util.stream.Stream;
2626
import org.apache.lucene.document.Document;
27+
import org.apache.lucene.document.Field;
2728
import org.apache.lucene.document.SortedNumericDocValuesField;
29+
import org.apache.lucene.document.StringField;
2830
import org.apache.lucene.index.DirectoryReader;
2931
import org.apache.lucene.index.IndexWriter;
3032
import org.apache.lucene.index.IndexWriterConfig;
33+
import org.apache.lucene.index.Term;
3134
import org.apache.lucene.search.BooleanClause.Occur;
3235
import org.apache.lucene.search.BooleanQuery;
3336
import org.apache.lucene.search.IndexSearcher;
34-
import org.apache.lucene.search.MatchAllDocsQuery;
3537
import org.apache.lucene.search.Query;
38+
import org.apache.lucene.search.TermQuery;
3639
import org.apache.lucene.store.Directory;
3740
import org.apache.lucene.store.MMapDirectory;
3841
import org.openjdk.jmh.annotations.Benchmark;
@@ -61,6 +64,8 @@
6164
public class SortedNumericGcdRangeIntoBitSetBenchmark {
6265

6366
private static final String FIELD = "val";
67+
private static final String LEAD_FIELD = "lead";
68+
private static final String LEAD_VALUE = "yes";
6469
private static final long DOMAIN = 10_000_000L;
6570
private static final long DELTA = 1_700_000_000_000L;
6671

@@ -95,6 +100,7 @@ public void setup() throws Exception {
95100
for (int c = 0; c < cardinality; c++) {
96101
doc.add(SortedNumericDocValuesField.indexedField(FIELD, base + c * step()));
97102
}
103+
doc.add(new StringField(LEAD_FIELD, LEAD_VALUE, Field.Store.NO));
98104
writer.addDocument(doc);
99105
}
100106
writer.forceMerge(1);
@@ -132,7 +138,7 @@ private Query rangeQuery() {
132138
long actualMax = actualValue(max);
133139
Query rangeQuery = SortedNumericDocValuesField.newSlowRangeQuery(FIELD, actualMin, actualMax);
134140
return new BooleanQuery.Builder()
135-
.add(new MatchAllDocsQuery(), Occur.FILTER)
141+
.add(new TermQuery(new Term(LEAD_FIELD, LEAD_VALUE)), Occur.FILTER)
136142
.add(rangeQuery, Occur.FILTER)
137143
.build();
138144
}

0 commit comments

Comments
 (0)