|
@@ -24,6 +24,8 @@ import org.apache.lucene.index.StoredFields;
|
|
|
import org.apache.lucene.index.TermVectors;
|
|
|
import org.apache.lucene.index.Terms;
|
|
|
import org.apache.lucene.search.KnnCollector;
|
|
|
+import org.apache.lucene.search.MatchAllDocsQuery;
|
|
|
+import org.apache.lucene.search.ScoreMode;
|
|
|
import org.apache.lucene.util.Bits;
|
|
|
import org.elasticsearch.common.util.concurrent.ConcurrentCollections;
|
|
|
import org.elasticsearch.test.ESTestCase;
|
|
@@ -50,27 +52,28 @@ public class LuceneSliceQueueTests extends ESTestCase {
|
|
|
LeafReaderContext leaf2 = new MockLeafReader(1000).getContext();
|
|
|
LeafReaderContext leaf3 = new MockLeafReader(1000).getContext();
|
|
|
LeafReaderContext leaf4 = new MockLeafReader(1000).getContext();
|
|
|
- List<Object> query1 = List.of("1");
|
|
|
- List<Object> query2 = List.of("q2");
|
|
|
+ LuceneSliceQueue.QueryAndTags t1 = new LuceneSliceQueue.QueryAndTags(new MatchAllDocsQuery(), List.of("q1"));
|
|
|
+ LuceneSliceQueue.QueryAndTags t2 = new LuceneSliceQueue.QueryAndTags(new MatchAllDocsQuery(), List.of("q2"));
|
|
|
+ var scoreMode = ScoreMode.COMPLETE_NO_SCORES;
|
|
|
List<LuceneSlice> sliceList = List.of(
|
|
|
// query1: new segment
|
|
|
- new LuceneSlice(0, true, null, List.of(new PartialLeafReaderContext(leaf1, 0, 10)), null, query1),
|
|
|
- new LuceneSlice(1, false, null, List.of(new PartialLeafReaderContext(leaf2, 0, 10)), null, query1),
|
|
|
- new LuceneSlice(2, false, null, List.of(new PartialLeafReaderContext(leaf2, 10, 20)), null, query1),
|
|
|
+ new LuceneSlice(0, true, null, List.of(new PartialLeafReaderContext(leaf1, 0, 10)), scoreMode, t1),
|
|
|
+ new LuceneSlice(1, false, null, List.of(new PartialLeafReaderContext(leaf2, 0, 10)), scoreMode, t1),
|
|
|
+ new LuceneSlice(2, false, null, List.of(new PartialLeafReaderContext(leaf2, 10, 20)), scoreMode, t1),
|
|
|
// query1: new segment
|
|
|
- new LuceneSlice(3, false, null, List.of(new PartialLeafReaderContext(leaf3, 0, 20)), null, query1),
|
|
|
- new LuceneSlice(4, false, null, List.of(new PartialLeafReaderContext(leaf3, 10, 20)), null, query1),
|
|
|
- new LuceneSlice(5, false, null, List.of(new PartialLeafReaderContext(leaf3, 20, 30)), null, query1),
|
|
|
+ new LuceneSlice(3, false, null, List.of(new PartialLeafReaderContext(leaf3, 0, 20)), scoreMode, t1),
|
|
|
+ new LuceneSlice(4, false, null, List.of(new PartialLeafReaderContext(leaf3, 10, 20)), scoreMode, t1),
|
|
|
+ new LuceneSlice(5, false, null, List.of(new PartialLeafReaderContext(leaf3, 20, 30)), scoreMode, t1),
|
|
|
// query1: new segment
|
|
|
- new LuceneSlice(6, false, null, List.of(new PartialLeafReaderContext(leaf4, 0, 10)), null, query1),
|
|
|
- new LuceneSlice(7, false, null, List.of(new PartialLeafReaderContext(leaf4, 10, 20)), null, query1),
|
|
|
+ new LuceneSlice(6, false, null, List.of(new PartialLeafReaderContext(leaf4, 0, 10)), scoreMode, t1),
|
|
|
+ new LuceneSlice(7, false, null, List.of(new PartialLeafReaderContext(leaf4, 10, 20)), scoreMode, t1),
|
|
|
// query2: new segment
|
|
|
- new LuceneSlice(8, true, null, List.of(new PartialLeafReaderContext(leaf2, 0, 10)), null, query2),
|
|
|
- new LuceneSlice(9, false, null, List.of(new PartialLeafReaderContext(leaf2, 10, 20)), null, query2),
|
|
|
+ new LuceneSlice(8, true, null, List.of(new PartialLeafReaderContext(leaf2, 0, 10)), scoreMode, t2),
|
|
|
+ new LuceneSlice(9, false, null, List.of(new PartialLeafReaderContext(leaf2, 10, 20)), scoreMode, t2),
|
|
|
// query1: new segment
|
|
|
- new LuceneSlice(10, false, null, List.of(new PartialLeafReaderContext(leaf3, 0, 20)), null, query2),
|
|
|
- new LuceneSlice(11, false, null, List.of(new PartialLeafReaderContext(leaf3, 10, 20)), null, query2),
|
|
|
- new LuceneSlice(12, false, null, List.of(new PartialLeafReaderContext(leaf3, 20, 30)), null, query2)
|
|
|
+ new LuceneSlice(10, false, null, List.of(new PartialLeafReaderContext(leaf3, 0, 20)), scoreMode, t2),
|
|
|
+ new LuceneSlice(11, false, null, List.of(new PartialLeafReaderContext(leaf3, 10, 20)), scoreMode, t2),
|
|
|
+ new LuceneSlice(12, false, null, List.of(new PartialLeafReaderContext(leaf3, 20, 30)), scoreMode, t2)
|
|
|
);
|
|
|
// single driver
|
|
|
{
|
|
@@ -139,7 +142,7 @@ public class LuceneSliceQueueTests extends ESTestCase {
|
|
|
false,
|
|
|
mock(ShardContext.class),
|
|
|
List.of(new PartialLeafReaderContext(leafContext, minDoc, maxDoc)),
|
|
|
- null,
|
|
|
+ ScoreMode.COMPLETE_NO_SCORES,
|
|
|
null
|
|
|
);
|
|
|
sliceList.add(slice);
|