Skip to content

Commit f8529e2

Browse files
authored
Merge branch 'main' into tvclean0
2 parents 04080fb + 6272a58 commit f8529e2

File tree

87 files changed

+331
-292
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

87 files changed

+331
-292
lines changed

build-tools-internal/src/main/resources/forbidden/es-all-signatures.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,3 +67,6 @@ org.elasticsearch.cluster.metadata.IndexMetadata#getForecastedWriteLoad()
6767
@defaultMessage Use org.elasticsearch.index.codec.vectors.OptimizedScalarQuantizer instead
6868
org.apache.lucene.util.quantization.OptimizedScalarQuantizer#<init>(org.apache.lucene.index.VectorSimilarityFunction, float, int)
6969
org.apache.lucene.util.quantization.OptimizedScalarQuantizer#<init>(org.apache.lucene.index.VectorSimilarityFunction)
70+
71+
@defaultMessage Use org.elasticsearch.common.lucene.search.Queries#NO_DOCS_INSTANCE instead
72+
org.apache.lucene.search.MatchNoDocsQuery#<init>()

modules/aggregations/src/test/java/org/elasticsearch/aggregations/bucket/histogram/AutoDateHistogramAggregatorTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
import org.apache.lucene.index.DirectoryReader;
1919
import org.apache.lucene.index.IndexableField;
2020
import org.apache.lucene.search.MatchAllDocsQuery;
21-
import org.apache.lucene.search.MatchNoDocsQuery;
2221
import org.apache.lucene.search.Query;
2322
import org.apache.lucene.store.Directory;
2423
import org.apache.lucene.tests.index.RandomIndexWriter;
@@ -27,6 +26,7 @@
2726
import org.elasticsearch.aggregations.pipeline.DerivativePipelineAggregationBuilder;
2827
import org.elasticsearch.cluster.metadata.IndexMetadata;
2928
import org.elasticsearch.common.CheckedBiConsumer;
29+
import org.elasticsearch.common.lucene.search.Queries;
3030
import org.elasticsearch.common.network.InetAddresses;
3131
import org.elasticsearch.common.settings.Settings;
3232
import org.elasticsearch.common.util.Maps;
@@ -113,7 +113,7 @@ protected List<SearchPlugin> getSearchPlugins() {
113113

114114
public void testMatchNoDocs() throws IOException {
115115
testSearchCase(
116-
new MatchNoDocsQuery(),
116+
Queries.NO_DOCS_INSTANCE,
117117
DATES_WITH_TIME,
118118
aggregation -> aggregation.setNumBuckets(10).field(DATE_FIELD),
119119
histogram -> {

modules/aggregations/src/test/java/org/elasticsearch/aggregations/pipeline/CumulativeSumAggregatorTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@
1414
import org.apache.lucene.document.SortedNumericDocValuesField;
1515
import org.apache.lucene.index.DirectoryReader;
1616
import org.apache.lucene.search.MatchAllDocsQuery;
17-
import org.apache.lucene.search.MatchNoDocsQuery;
1817
import org.apache.lucene.search.Query;
1918
import org.apache.lucene.store.Directory;
2019
import org.apache.lucene.tests.index.RandomIndexWriter;
2120
import org.elasticsearch.aggregations.AggregationsPlugin;
21+
import org.elasticsearch.common.lucene.search.Queries;
2222
import org.elasticsearch.common.time.DateFormatters;
2323
import org.elasticsearch.core.CheckedConsumer;
2424
import org.elasticsearch.index.mapper.DateFieldMapper;
@@ -256,7 +256,7 @@ public void testNoBuckets() throws IOException {
256256
int numValueBuckets = ((maxRandomValue - minRandomValue) / interval) + 1;
257257
long[] valueCounts = new long[numValueBuckets];
258258

259-
Query query = new MatchNoDocsQuery();
259+
Query query = Queries.NO_DOCS_INSTANCE;
260260

261261
HistogramAggregationBuilder aggBuilder = new HistogramAggregationBuilder("histo").field(VALUE_FIELD).interval(interval);
262262
aggBuilder.subAggregation(new SumAggregationBuilder("sum").field(VALUE_FIELD));

modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/extras/RankFeatureQueryBuilder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@
1010
package org.elasticsearch.index.mapper.extras;
1111

1212
import org.apache.lucene.document.FeatureField;
13-
import org.apache.lucene.search.MatchNoDocsQuery;
1413
import org.apache.lucene.search.Query;
1514
import org.elasticsearch.TransportVersion;
1615
import org.elasticsearch.common.io.stream.StreamInput;
1716
import org.elasticsearch.common.io.stream.StreamOutput;
17+
import org.elasticsearch.common.lucene.search.Queries;
1818
import org.elasticsearch.index.mapper.MappedFieldType;
1919
import org.elasticsearch.index.mapper.extras.RankFeatureFieldMapper.RankFeatureFieldType;
2020
import org.elasticsearch.index.mapper.extras.RankFeaturesFieldMapper.RankFeaturesFieldType;
@@ -392,7 +392,7 @@ protected Query doToQuery(SearchExecutionContext context) throws IOException {
392392
return scoreFunction.toQuery(parentField, field.substring(lastDotIndex + 1), true);
393393
}
394394
}
395-
return new MatchNoDocsQuery(); // unmapped field
395+
return Queries.NO_DOCS_INSTANCE; // unmapped field
396396
} else {
397397
throw new IllegalArgumentException(
398398
"[rank_feature] query only works on [rank_feature] fields and "

modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/extras/SourceConfirmedTextQuery.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
import org.apache.lucene.util.IOFunction;
4646
import org.elasticsearch.common.CheckedIntFunction;
4747
import org.elasticsearch.common.lucene.search.MultiPhrasePrefixQuery;
48+
import org.elasticsearch.common.lucene.search.Queries;
4849

4950
import java.io.IOException;
5051
import java.io.UncheckedIOException;
@@ -105,7 +106,7 @@ private static Query approximate(MultiPhraseQuery query) {
105106
private static Query approximate(MultiPhrasePrefixQuery query) {
106107
Term[][] terms = query.getTerms();
107108
if (terms.length == 0) {
108-
return new MatchNoDocsQuery();
109+
return Queries.NO_DOCS_INSTANCE;
109110
} else if (terms.length == 1) {
110111
// Only a prefix, approximate with a prefix query
111112
BooleanQuery.Builder approximation = new BooleanQuery.Builder();

modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/extras/SearchAsYouTypeFieldMapperTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,14 @@
2525
import org.apache.lucene.search.ConstantScoreQuery;
2626
import org.apache.lucene.search.DisjunctionMaxQuery;
2727
import org.apache.lucene.search.FieldExistsQuery;
28-
import org.apache.lucene.search.MatchNoDocsQuery;
2928
import org.apache.lucene.search.MultiPhraseQuery;
3029
import org.apache.lucene.search.Query;
3130
import org.apache.lucene.search.SynonymQuery;
3231
import org.apache.lucene.search.TermQuery;
3332
import org.apache.lucene.store.Directory;
3433
import org.apache.lucene.tests.index.RandomIndexWriter;
3534
import org.elasticsearch.common.lucene.search.MultiPhrasePrefixQuery;
35+
import org.elasticsearch.common.lucene.search.Queries;
3636
import org.elasticsearch.index.IndexSettings;
3737
import org.elasticsearch.index.analysis.AnalyzerScope;
3838
import org.elasticsearch.index.analysis.IndexAnalyzers;
@@ -491,7 +491,7 @@ public void testMatchPhrasePrefix() throws IOException {
491491

492492
{
493493
Query q = new MatchPhrasePrefixQueryBuilder("field._3gram", "two words").toQuery(searchExecutionContext);
494-
Query expected = new MatchNoDocsQuery();
494+
Query expected = Queries.NO_DOCS_INSTANCE;
495495
assertThat(q, equalTo(expected));
496496
}
497497

modules/mapper-extras/src/test/java/org/elasticsearch/index/mapper/extras/SourceConfirmedTextQueryTests.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
import org.apache.lucene.search.BooleanQuery;
2727
import org.apache.lucene.search.Explanation;
2828
import org.apache.lucene.search.IndexSearcher;
29-
import org.apache.lucene.search.MatchNoDocsQuery;
3029
import org.apache.lucene.search.Matches;
3130
import org.apache.lucene.search.MatchesIterator;
3231
import org.apache.lucene.search.MultiPhraseQuery;
@@ -46,6 +45,7 @@
4645
import org.elasticsearch.common.CheckedIntFunction;
4746
import org.elasticsearch.common.lucene.Lucene;
4847
import org.elasticsearch.common.lucene.search.MultiPhrasePrefixQuery;
48+
import org.elasticsearch.common.lucene.search.Queries;
4949
import org.elasticsearch.test.ESTestCase;
5050

5151
import java.io.IOException;
@@ -442,7 +442,7 @@ public void testApproximation() {
442442
assertEquals(approximation, SourceConfirmedTextQuery.approximate(query));
443443

444444
MultiPhrasePrefixQuery phrasePrefixQuery = new MultiPhrasePrefixQuery("body");
445-
assertEquals(new MatchNoDocsQuery(), SourceConfirmedTextQuery.approximate(phrasePrefixQuery));
445+
assertEquals(Queries.NO_DOCS_INSTANCE, SourceConfirmedTextQuery.approximate(phrasePrefixQuery));
446446

447447
phrasePrefixQuery.add(new Term("body", "apache"));
448448
approximation = new BooleanQuery.Builder().add(new PrefixQuery(new Term("body", "apache")), Occur.FILTER).build();

modules/parent-join/src/main/java/org/elasticsearch/join/query/HasChildQueryBuilder.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,8 @@
5151
* A query builder for {@code has_child} query.
5252
*/
5353
public class HasChildQueryBuilder extends AbstractQueryBuilder<HasChildQueryBuilder> {
54+
55+
private static final MatchNoDocsQuery CANNOT_LOAD_EMPTY_READER = new MatchNoDocsQuery("Can't load against an empty reader");
5456
public static final String NAME = "has_child";
5557

5658
/**
@@ -315,15 +317,15 @@ protected Query doToQuery(SearchExecutionContext context) throws IOException {
315317
Joiner joiner = Joiner.getJoiner(context);
316318
if (joiner == null) {
317319
if (ignoreUnmapped) {
318-
return new MatchNoDocsQuery();
320+
return Queries.NO_DOCS_INSTANCE;
319321
} else {
320322
throw new QueryShardException(context, "[" + NAME + "] no join field has been configured");
321323
}
322324
}
323325

324326
if (joiner.childTypeExists(type) == false) {
325327
if (ignoreUnmapped) {
326-
return new MatchNoDocsQuery();
328+
return Queries.NO_DOCS_INSTANCE;
327329
} else {
328330
throw new QueryShardException(
329331
context,
@@ -335,7 +337,7 @@ protected Query doToQuery(SearchExecutionContext context) throws IOException {
335337
String parentJoinField = joiner.parentJoinField(type);
336338
if (context.isFieldMapped(parentJoinField) == false) {
337339
if (ignoreUnmapped) {
338-
return new MatchNoDocsQuery();
340+
return Queries.NO_DOCS_INSTANCE;
339341
}
340342
throw new QueryShardException(context, "[" + NAME + "] no parent join field [" + parentJoinField + "] configured");
341343
}
@@ -427,7 +429,7 @@ public Query rewrite(IndexSearcher searcher) throws IOException {
427429
// blow up since for this query to work we have to have a DirectoryReader otherwise
428430
// we can't load global ordinals - for this to work we simply check if the reader has no leaves
429431
// and rewrite to match nothing
430-
return new MatchNoDocsQuery("Can't load against an empty reader");
432+
return CANNOT_LOAD_EMPTY_READER;
431433
}
432434
throw new IllegalStateException(
433435
"can't load global ordinals for reader of type: " + searcher.getClass() + " must be a DirectoryReader"

modules/parent-join/src/main/java/org/elasticsearch/join/query/HasParentQueryBuilder.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,14 +162,14 @@ protected Query doToQuery(SearchExecutionContext context) throws IOException {
162162
Joiner joiner = Joiner.getJoiner(context);
163163
if (joiner == null) {
164164
if (ignoreUnmapped) {
165-
return new MatchNoDocsQuery();
165+
return Queries.NO_DOCS_INSTANCE;
166166
} else {
167167
throw new QueryShardException(context, "[" + NAME + "] no join field has been configured");
168168
}
169169
}
170170
if (joiner.parentTypeExists(parentType) == false) {
171171
if (ignoreUnmapped) {
172-
return new MatchNoDocsQuery();
172+
return Queries.NO_DOCS_INSTANCE;
173173
} else {
174174
throw new QueryShardException(
175175
context,

modules/parent-join/src/main/java/org/elasticsearch/join/query/ParentIdQueryBuilder.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
import org.elasticsearch.common.ParsingException;
2121
import org.elasticsearch.common.io.stream.StreamInput;
2222
import org.elasticsearch.common.io.stream.StreamOutput;
23+
import org.elasticsearch.common.lucene.search.Queries;
2324
import org.elasticsearch.index.query.AbstractQueryBuilder;
2425
import org.elasticsearch.index.query.QueryShardException;
2526
import org.elasticsearch.index.query.SearchExecutionContext;
@@ -158,15 +159,15 @@ protected Query doToQuery(SearchExecutionContext context) throws IOException {
158159
Joiner joiner = Joiner.getJoiner(context);
159160
if (joiner == null) {
160161
if (ignoreUnmapped) {
161-
return new MatchNoDocsQuery();
162+
return Queries.NO_DOCS_INSTANCE;
162163
} else {
163164
final String indexName = context.getIndexSettings().getIndex().getName();
164165
throw new QueryShardException(context, "[" + NAME + "] no join field found for index [" + indexName + "]");
165166
}
166167
}
167168
if (joiner.childTypeExists(type) == false) {
168169
if (ignoreUnmapped) {
169-
return new MatchNoDocsQuery();
170+
return Queries.NO_DOCS_INSTANCE;
170171
} else {
171172
throw new QueryShardException(context, "[" + NAME + "] no relation found for child [" + type + "]");
172173
}

0 commit comments

Comments
 (0)