From cd0a375414fd86bf2557dad1064c0b10e8312550 Mon Sep 17 00:00:00 2001 From: Julie Tibshirani Date: Thu, 31 May 2018 12:47:52 -0700 Subject: [PATCH] Remove unused query methods from MappedFieldType. (#30987) * Remove MappedFieldType#nullValueQuery, as it is now unused. * Remove MappedFieldType#queryStringTermQuery, as it is never overridden. --- .../index/mapper/FeatureFieldMapper.java | 8 ------- .../ICUCollationKeywordFieldMapper.java | 8 ------- .../queries/ExtendedCommonTermsQuery.java | 21 +----------------- .../index/mapper/KeywordFieldMapper.java | 8 ------- .../index/mapper/MappedFieldType.java | 13 ----------- .../index/mapper/TextFieldMapper.java | 9 -------- .../index/query/CommonTermsQueryBuilder.java | 3 +-- .../index/search/MatchQuery.java | 22 ++++++++++--------- .../index/search/QueryStringQueryParser.java | 11 ---------- .../index/mapper/FakeStringFieldMapper.java | 10 +-------- 10 files changed, 15 insertions(+), 98 deletions(-) diff --git a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/FeatureFieldMapper.java b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/FeatureFieldMapper.java index 5b0158ff55b5f..30e18ae6d6823 100644 --- a/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/FeatureFieldMapper.java +++ b/modules/mapper-extras/src/main/java/org/elasticsearch/index/mapper/FeatureFieldMapper.java @@ -163,14 +163,6 @@ public Query existsQuery(QueryShardContext context) { return new TermQuery(new Term("_feature", name())); } - @Override - public Query nullValueQuery() { - if (nullValue() == null) { - return null; - } - return termQuery(nullValue(), null); - } - @Override public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { failIfNoDocValues(); diff --git a/plugins/analysis-icu/src/main/java/org/elasticsearch/index/mapper/ICUCollationKeywordFieldMapper.java b/plugins/analysis-icu/src/main/java/org/elasticsearch/index/mapper/ICUCollationKeywordFieldMapper.java index a4502a953dbe0..c4c44222f470e 100644 --- a/plugins/analysis-icu/src/main/java/org/elasticsearch/index/mapper/ICUCollationKeywordFieldMapper.java +++ b/plugins/analysis-icu/src/main/java/org/elasticsearch/index/mapper/ICUCollationKeywordFieldMapper.java @@ -135,14 +135,6 @@ public Query existsQuery(QueryShardContext context) { } } - @Override - public Query nullValueQuery() { - if (nullValue() == null) { - return null; - } - return termQuery(nullValue(), null); - } - @Override public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { failIfNoDocValues(); diff --git a/server/src/main/java/org/apache/lucene/queries/ExtendedCommonTermsQuery.java b/server/src/main/java/org/apache/lucene/queries/ExtendedCommonTermsQuery.java index c0c6bbb05d81f..249b7fa83b50b 100644 --- a/server/src/main/java/org/apache/lucene/queries/ExtendedCommonTermsQuery.java +++ b/server/src/main/java/org/apache/lucene/queries/ExtendedCommonTermsQuery.java @@ -19,12 +19,8 @@ package org.apache.lucene.queries; -import org.apache.lucene.index.Term; -import org.apache.lucene.index.TermContext; import org.apache.lucene.search.BooleanClause.Occur; -import org.apache.lucene.search.Query; import org.elasticsearch.common.lucene.search.Queries; -import org.elasticsearch.index.mapper.MappedFieldType; /** * Extended version of {@link CommonTermsQuery} that allows to pass in a @@ -33,11 +29,8 @@ */ public class ExtendedCommonTermsQuery extends CommonTermsQuery { - private final MappedFieldType fieldType; - - public ExtendedCommonTermsQuery(Occur highFreqOccur, Occur lowFreqOccur, float maxTermFrequency, MappedFieldType fieldType) { + public ExtendedCommonTermsQuery(Occur highFreqOccur, Occur lowFreqOccur, float maxTermFrequency) { super(highFreqOccur, lowFreqOccur, maxTermFrequency); - this.fieldType = fieldType; } private String lowFreqMinNumShouldMatchSpec; @@ -80,16 +73,4 @@ public float getMaxTermFrequency() { return this.maxTermFrequency; } - @Override - protected Query newTermQuery(Term term, TermContext context) { - if (fieldType == null) { - return super.newTermQuery(term, context); - } - final Query query = fieldType.queryStringTermQuery(term); - if (query == null) { - return super.newTermQuery(term, context); - } else { - return query; - } - } } diff --git a/server/src/main/java/org/elasticsearch/index/mapper/KeywordFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/KeywordFieldMapper.java index 76163929e68ae..8c3a0923d1d05 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/KeywordFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/KeywordFieldMapper.java @@ -223,14 +223,6 @@ public Query existsQuery(QueryShardContext context) { } } - @Override - public Query nullValueQuery() { - if (nullValue() == null) { - return null; - } - return termQuery(nullValue(), null); - } - @Override public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { failIfNoDocValues(); diff --git a/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java b/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java index fb92c576e015d..facf669cb5d02 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/MappedFieldType.java @@ -351,13 +351,6 @@ public Query regexpQuery(String value, int flags, int maxDeterminizedStates, @Nu throw new QueryShardException(context, "Can only use regexp queries on keyword and text fields - not on [" + name + "] which is of type [" + typeName() + "]"); } - public Query nullValueQuery() { - if (nullValue == null) { - return null; - } - return new ConstantScoreQuery(termQuery(nullValue, null)); - } - public abstract Query existsQuery(QueryShardContext context); /** @@ -382,12 +375,6 @@ public Relation isFieldWithinQuery( return Relation.INTERSECTS; } - /** A term query to use when parsing a query string. Can return {@code null}. */ - @Nullable - public Query queryStringTermQuery(Term term) { - return null; - } - /** @throws IllegalArgumentException if the fielddata is not supported on this type. * An IllegalArgumentException is needed in order to return an http error 400 * when this error occurs in a request. see: {@link org.elasticsearch.ExceptionsHelper#status} diff --git a/server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java b/server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java index d71d2ad579c05..b5e15f1a0265d 100644 --- a/server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java +++ b/server/src/main/java/org/elasticsearch/index/mapper/TextFieldMapper.java @@ -24,7 +24,6 @@ import org.apache.lucene.analysis.TokenFilter; import org.apache.lucene.analysis.ngram.EdgeNGramTokenFilter; import org.apache.lucene.document.Field; -import org.apache.lucene.document.FieldType; import org.apache.lucene.index.IndexOptions; import org.apache.lucene.index.IndexableField; import org.apache.lucene.index.Term; @@ -471,14 +470,6 @@ public Query existsQuery(QueryShardContext context) { } } - @Override - public Query nullValueQuery() { - if (nullValue() == null) { - return null; - } - return termQuery(nullValue(), null); - } - @Override public IndexFieldData.Builder fielddataBuilder(String fullyQualifiedIndexName) { if (fielddata == false) { diff --git a/server/src/main/java/org/elasticsearch/index/query/CommonTermsQueryBuilder.java b/server/src/main/java/org/elasticsearch/index/query/CommonTermsQueryBuilder.java index 974466a3161f3..2fd4d710f9689 100644 --- a/server/src/main/java/org/elasticsearch/index/query/CommonTermsQueryBuilder.java +++ b/server/src/main/java/org/elasticsearch/index/query/CommonTermsQueryBuilder.java @@ -371,8 +371,7 @@ protected Query doToQuery(QueryShardContext context) throws IOException { Occur highFreqOccur = highFreqOperator.toBooleanClauseOccur(); Occur lowFreqOccur = lowFreqOperator.toBooleanClauseOccur(); - ExtendedCommonTermsQuery commonsQuery = new ExtendedCommonTermsQuery(highFreqOccur, lowFreqOccur, - cutoffFrequency, fieldType); + ExtendedCommonTermsQuery commonsQuery = new ExtendedCommonTermsQuery(highFreqOccur, lowFreqOccur, cutoffFrequency); return parseQueryString(commonsQuery, text, field, analyzerObj, lowFreqMinimumShouldMatch, highFreqMinimumShouldMatch); } diff --git a/server/src/main/java/org/elasticsearch/index/search/MatchQuery.java b/server/src/main/java/org/elasticsearch/index/search/MatchQuery.java index 03b4715c4b178..4436d560bd2c7 100644 --- a/server/src/main/java/org/elasticsearch/index/search/MatchQuery.java +++ b/server/src/main/java/org/elasticsearch/index/search/MatchQuery.java @@ -20,8 +20,8 @@ package org.elasticsearch.index.search; import org.apache.lucene.analysis.Analyzer; -import org.apache.lucene.analysis.miscellaneous.DisableGraphAttribute; import org.apache.lucene.analysis.TokenStream; +import org.apache.lucene.analysis.miscellaneous.DisableGraphAttribute; import org.apache.lucene.index.IndexOptions; import org.apache.lucene.index.Term; import org.apache.lucene.queries.ExtendedCommonTermsQuery; @@ -29,7 +29,6 @@ import org.apache.lucene.search.BooleanClause.Occur; import org.apache.lucene.search.BooleanQuery; import org.apache.lucene.search.BoostQuery; -import org.apache.lucene.search.DisjunctionMaxQuery; import org.apache.lucene.search.FuzzyQuery; import org.apache.lucene.search.MultiPhraseQuery; import org.apache.lucene.search.MultiTermQuery; @@ -283,7 +282,7 @@ public Query parse(Type type, String fieldName, Object value) throws IOException if (commonTermsCutoff == null) { query = builder.createBooleanQuery(field, value.toString(), occur); } else { - query = builder.createCommonTermsQuery(field, value.toString(), occur, occur, commonTermsCutoff, fieldType); + query = builder.createCommonTermsQuery(field, value.toString(), occur, occur, commonTermsCutoff); } break; case PHRASE: @@ -463,20 +462,23 @@ private Query toSpanQueryPrefix(SpanQuery query, float boost) { } } - public Query createCommonTermsQuery(String field, String queryText, Occur highFreqOccur, Occur lowFreqOccur, float - maxTermFrequency, MappedFieldType fieldType) { + public Query createCommonTermsQuery(String field, String queryText, + Occur highFreqOccur, + Occur lowFreqOccur, + float maxTermFrequency) { Query booleanQuery = createBooleanQuery(field, queryText, lowFreqOccur); if (booleanQuery != null && booleanQuery instanceof BooleanQuery) { BooleanQuery bq = (BooleanQuery) booleanQuery; - return boolToExtendedCommonTermsQuery(bq, highFreqOccur, lowFreqOccur, maxTermFrequency, fieldType); + return boolToExtendedCommonTermsQuery(bq, highFreqOccur, lowFreqOccur, maxTermFrequency); } return booleanQuery; } - private Query boolToExtendedCommonTermsQuery(BooleanQuery bq, Occur highFreqOccur, Occur lowFreqOccur, float - maxTermFrequency, MappedFieldType fieldType) { - ExtendedCommonTermsQuery query = new ExtendedCommonTermsQuery(highFreqOccur, lowFreqOccur, maxTermFrequency, - fieldType); + private Query boolToExtendedCommonTermsQuery(BooleanQuery bq, + Occur highFreqOccur, + Occur lowFreqOccur, + float maxTermFrequency) { + ExtendedCommonTermsQuery query = new ExtendedCommonTermsQuery(highFreqOccur, lowFreqOccur, maxTermFrequency); for (BooleanClause clause : bq.clauses()) { if (!(clause.getQuery() instanceof TermQuery)) { return bq; diff --git a/server/src/main/java/org/elasticsearch/index/search/QueryStringQueryParser.java b/server/src/main/java/org/elasticsearch/index/search/QueryStringQueryParser.java index 398f2240a5c43..590bcf5e4e0bc 100644 --- a/server/src/main/java/org/elasticsearch/index/search/QueryStringQueryParser.java +++ b/server/src/main/java/org/elasticsearch/index/search/QueryStringQueryParser.java @@ -272,17 +272,6 @@ private Map extractMultiFields(String field, boolean quoted) { } } - @Override - protected Query newTermQuery(Term term) { - if (currentFieldType != null) { - Query termQuery = currentFieldType.queryStringTermQuery(term); - if (termQuery != null) { - return termQuery; - } - } - return super.newTermQuery(term); - } - @Override protected Query newMatchAllDocsQuery() { return Queries.newMatchAllQuery(); diff --git a/server/src/test/java/org/elasticsearch/index/mapper/FakeStringFieldMapper.java b/server/src/test/java/org/elasticsearch/index/mapper/FakeStringFieldMapper.java index efb2023ee6919..8d8a2f98866c8 100644 --- a/server/src/test/java/org/elasticsearch/index/mapper/FakeStringFieldMapper.java +++ b/server/src/test/java/org/elasticsearch/index/mapper/FakeStringFieldMapper.java @@ -105,14 +105,6 @@ public String typeName() { return CONTENT_TYPE; } - @Override - public Query nullValueQuery() { - if (nullValue() == null) { - return null; - } - return termQuery(nullValue(), null); - } - @Override public Query existsQuery(QueryShardContext context) { if (hasDocValues()) { @@ -136,7 +128,7 @@ protected void parseCreateField(ParseContext context, List field } else { value = context.parser().textOrNull(); } - + if (value == null) { return; }