Skip to content

Commit 0ee5e4f

Browse files
committed
Fix compilation issues after last Lucene 10 snapshot merge
1 parent fff3fbb commit 0ee5e4f

File tree

25 files changed

+75
-54
lines changed

25 files changed

+75
-54
lines changed

server/src/main/java/org/elasticsearch/index/fielddata/ordinals/MultiOrdinals.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,13 @@ public static boolean significantlySmallerThanSinglePackedOrdinals(
3939
float acceptableOverheadRatio
4040
) {
4141
int bitsPerOrd = PackedInts.bitsRequired(numOrds);
42-
bitsPerOrd = PackedInts.fastestFormatAndBits(numDocsWithValue, bitsPerOrd, acceptableOverheadRatio).bitsPerValue;
42+
bitsPerOrd = PackedInts.fastestFormatAndBits(numDocsWithValue, bitsPerOrd, acceptableOverheadRatio).bitsPerValue();
4343
// Compute the worst-case number of bits per value for offsets in the worst case, eg. if no docs have a value at the
4444
// beginning of the block and all docs have one at the end of the block
4545
final float avgValuesPerDoc = (float) numDocsWithValue / maxDoc;
4646
final int maxDelta = (int) Math.ceil(OFFSETS_PAGE_SIZE * (1 - avgValuesPerDoc) * avgValuesPerDoc);
4747
int bitsPerOffset = PackedInts.bitsRequired(maxDelta) + 1; // +1 because of the sign
48-
bitsPerOffset = PackedInts.fastestFormatAndBits(maxDoc, bitsPerOffset, acceptableOverheadRatio).bitsPerValue;
48+
bitsPerOffset = PackedInts.fastestFormatAndBits(maxDoc, bitsPerOffset, acceptableOverheadRatio).bitsPerValue();
4949

5050
final long expectedMultiSizeInBytes = (long) numDocsWithValue * bitsPerOrd + (long) maxDoc * bitsPerOffset;
5151
final long expectedSingleSizeInBytes = (long) maxDoc * bitsPerOrd;

server/src/main/java/org/elasticsearch/index/query/CombinedFieldsQueryBuilder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -411,8 +411,8 @@ public Query createPhraseQuery(String field, String queryText, int phraseSlop) {
411411
protected Query newSynonymQuery(String field, TermAndBoost[] terms) {
412412
CombinedFieldQuery.Builder query = new CombinedFieldQuery.Builder();
413413
for (TermAndBoost termAndBoost : terms) {
414-
assert termAndBoost.boost == BoostAttribute.DEFAULT_BOOST;
415-
BytesRef bytes = termAndBoost.term;
414+
assert termAndBoost.boost() == BoostAttribute.DEFAULT_BOOST;
415+
BytesRef bytes = termAndBoost.term();
416416
query.addTerm(bytes);
417417
}
418418
for (FieldAndBoost fieldAndBoost : fields) {

server/src/main/java/org/elasticsearch/index/search/MultiMatchQueryParser.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ protected Query createBooleanPrefixQuery(String field, String queryText, Boolean
199199
protected Query newSynonymQuery(String field, TermAndBoost[] terms) {
200200
BytesRef[] values = new BytesRef[terms.length];
201201
for (int i = 0; i < terms.length; i++) {
202-
values[i] = terms[i].term;
202+
values[i] = terms[i].term();
203203
}
204204
return blendTerms(context, values, tieBreaker, lenient, blendedFields);
205205
}

server/src/main/java/org/elasticsearch/lucene/queries/SearchAfterSortedDocQuery.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ public Weight createWeight(IndexSearcher searcher, ScoreMode scoreMode, float bo
6868
return new ConstantScoreWeight(this, 1.0f) {
6969
@Override
7070
public ScorerSupplier scorerSupplier(LeafReaderContext context) throws IOException {
71-
Sort segmentSort = context.reader().getMetaData().getSort();
71+
Sort segmentSort = context.reader().getMetaData().sort();
7272
if (segmentSort == null || Lucene.canEarlyTerminate(sort, segmentSort) == false) {
7373
throw new IOException("search sort :[" + sort + "] does not match the index sort:[" + segmentSort + "]");
7474
}

server/src/main/java/org/elasticsearch/search/aggregations/bucket/composite/CompositeAggregator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,7 @@ private static boolean isMaybeMultivalued(LeafReaderContext context, SortField s
277277
* optimization and null if index sort is not applicable.
278278
*/
279279
private Sort buildIndexSortPrefix(LeafReaderContext context) throws IOException {
280-
Sort indexSort = context.reader().getMetaData().getSort();
280+
Sort indexSort = context.reader().getMetaData().sort();
281281
if (indexSort == null) {
282282
return null;
283283
}

server/src/main/java/org/elasticsearch/search/aggregations/bucket/filter/QueryToFilterAdapter.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,8 @@ long count(LeafReaderContext ctx, FiltersAggregator.Counter counter, Bits live)
214214
// No hits in this segment.
215215
return 0;
216216
}
217-
scorer.score(counter, live);
217+
IndexSearcher.LeafReaderContextPartition partition = IndexSearcher.LeafReaderContextPartition.createForEntireSegment(ctx);
218+
scorer.score(counter, live, partition.minDocId, partition.maxDocId);
218219
return counter.readAndReset(ctx);
219220
}
220221

@@ -227,7 +228,8 @@ void collect(LeafReaderContext ctx, LeafCollector collector, Bits live) throws I
227228
// No hits in this segment.
228229
return;
229230
}
230-
scorer.score(collector, live);
231+
IndexSearcher.LeafReaderContextPartition partition = IndexSearcher.LeafReaderContextPartition.createForEntireSegment(ctx);
232+
scorer.score(collector, live, partition.minDocId, partition.maxDocId);
231233
}
232234

233235
/**

server/src/main/java/org/elasticsearch/search/aggregations/bucket/global/GlobalAggregator.java

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,9 @@
77
*/
88
package org.elasticsearch.search.aggregations.bucket.global;
99

10+
import org.apache.lucene.index.LeafReaderContext;
1011
import org.apache.lucene.search.BulkScorer;
12+
import org.apache.lucene.search.IndexSearcher;
1113
import org.apache.lucene.search.LeafCollector;
1214
import org.apache.lucene.search.MatchAllDocsQuery;
1315
import org.apache.lucene.search.Scorable;
@@ -39,11 +41,16 @@ public GlobalAggregator(String name, AggregatorFactories subFactories, Aggregati
3941
@Override
4042
public LeafBucketCollector getLeafCollector(AggregationExecutionContext aggCtx, LeafBucketCollector sub) throws IOException {
4143
// Run sub-aggregations on child documents
42-
BulkScorer scorer = weight.bulkScorer(aggCtx.getLeafReaderContext());
44+
LeafReaderContext leafReaderContext = aggCtx.getLeafReaderContext();
45+
BulkScorer scorer = weight.bulkScorer(leafReaderContext);
4346
if (scorer == null) {
4447
return LeafBucketCollector.NO_OP_COLLECTOR;
4548
}
4649
grow(1);
50+
IndexSearcher.LeafReaderContextPartition partition = IndexSearcher.LeafReaderContextPartition.createForEntireSegment(
51+
leafReaderContext
52+
);
53+
4754
scorer.score(new LeafCollector() {
4855
@Override
4956
public void collect(int doc) throws IOException {
@@ -54,7 +61,7 @@ public void collect(int doc) throws IOException {
5461
public void setScorer(Scorable scorer) throws IOException {
5562
sub.setScorer(scorer);
5663
}
57-
}, aggCtx.getLeafReaderContext().reader().getLiveDocs());
64+
}, aggCtx.getLeafReaderContext().reader().getLiveDocs(), partition.minDocId, partition.maxDocId);
5865
return LeafBucketCollector.NO_OP_COLLECTOR;
5966
}
6067

server/src/main/java/org/elasticsearch/search/fetch/subphase/highlight/FragmentBuilderHelper.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,12 +39,12 @@ public static WeightedFragInfo fixWeightedFragInfo(WeightedFragInfo fragInfo) {
3939
* than in this hack... aka. "we are are working on in!" */
4040
final List<SubInfo> subInfos = fragInfo.getSubInfos();
4141
CollectionUtil.introSort(subInfos, (o1, o2) -> {
42-
int startOffset = o1.getTermsOffsets().get(0).getStartOffset();
43-
int startOffset2 = o2.getTermsOffsets().get(0).getStartOffset();
42+
int startOffset = o1.termsOffsets().get(0).getStartOffset();
43+
int startOffset2 = o2.termsOffsets().get(0).getStartOffset();
4444
return Integer.compare(startOffset, startOffset2);
4545
});
4646
return new WeightedFragInfo(
47-
Math.min(fragInfo.getSubInfos().get(0).getTermsOffsets().get(0).getStartOffset(), fragInfo.getStartOffset()),
47+
Math.min(fragInfo.getSubInfos().get(0).termsOffsets().get(0).getStartOffset(), fragInfo.getStartOffset()),
4848
fragInfo.getEndOffset(),
4949
subInfos,
5050
fragInfo.getTotalBoost()

server/src/main/java/org/elasticsearch/search/internal/ContextIndexSearcher.java

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,8 @@ public static LeafSlice[] computeSlices(List<LeafReaderContext> leaves, int maxS
246246
throw new IllegalArgumentException("maxSliceNum must be >= 1 (got " + maxSliceNum + ")");
247247
}
248248
if (maxSliceNum == 1) {
249-
return new LeafSlice[] { new LeafSlice(new ArrayList<>(leaves)) };
249+
return new LeafSlice[] {
250+
new LeafSlice(new ArrayList<>(leaves.stream().map(LeafReaderContextPartition::createForEntireSegment).toList())) };
250251
}
251252
// total number of documents to be searched
252253
final int numDocs = leaves.stream().mapToInt(l -> l.reader().maxDoc()).sum();
@@ -294,7 +295,7 @@ private static LeafSlice[] computeSlices(List<LeafReaderContext> leaves, int min
294295
for (List<LeafReaderContext> currentLeaf : queue) {
295296
// LeafSlice ctor reorders leaves so that leaves within a slice preserve the order they had within the IndexReader.
296297
// This is important given how Elasticsearch sorts leaves by descending @timestamp to get better query performance.
297-
slices[upto++] = new LeafSlice(currentLeaf);
298+
slices[upto++] = new LeafSlice(currentLeaf.stream().map(LeafReaderContextPartition::createForEntireSegment).toList());
298299
}
299300

300301
return slices;
@@ -347,10 +348,10 @@ private <C extends Collector, T> T search(Weight weight, CollectorManager<C, T>
347348
}
348349
final List<Callable<C>> listTasks = new ArrayList<>(leafSlices.length);
349350
for (int i = 0; i < leafSlices.length; ++i) {
350-
final LeafReaderContext[] leaves = leafSlices[i].leaves;
351+
final LeafReaderContextPartition[] leaves = leafSlices[i].partitions;
351352
final C collector = collectors.get(i);
352353
listTasks.add(() -> {
353-
search(Arrays.asList(leaves), weight, collector);
354+
search(leaves, weight, collector);
354355
return collector;
355356
});
356357
}
@@ -415,7 +416,7 @@ private static class TimeExceededException extends RuntimeException {
415416
}
416417

417418
@Override
418-
protected void searchLeaf(LeafReaderContext ctx, Weight weight, Collector collector) throws IOException {
419+
protected void searchLeaf(LeafReaderContext ctx, int minDocId, int maxDocId, Weight weight, Collector collector) throws IOException {
419420
cancellable.checkCancelled();
420421
final LeafCollector leafCollector;
421422
try {
@@ -435,7 +436,7 @@ protected void searchLeaf(LeafReaderContext ctx, Weight weight, Collector collec
435436
bulkScorer = new CancellableBulkScorer(bulkScorer, cancellable::checkCancelled);
436437
}
437438
try {
438-
bulkScorer.score(leafCollector, liveDocs);
439+
bulkScorer.score(leafCollector, liveDocs, minDocId, maxDocId);
439440
} catch (CollectionTerminatedException e) {
440441
// collection was terminated prematurely
441442
// continue with the following leaf

server/src/main/java/org/elasticsearch/search/query/QueryPhase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ private static boolean canEarlyTerminate(IndexReader reader, SortAndFormats sort
240240
}
241241
final Sort sort = sortAndFormats.sort;
242242
for (LeafReaderContext ctx : reader.leaves()) {
243-
Sort indexSort = ctx.reader().getMetaData().getSort();
243+
Sort indexSort = ctx.reader().getMetaData().sort();
244244
if (indexSort == null || Lucene.canEarlyTerminate(sort, indexSort) == false) {
245245
return false;
246246
}

0 commit comments

Comments
 (0)