Module org.elasticsearch.server
Class MaxClauseCountQueryVisitor
java.lang.Object
org.apache.lucene.search.QueryVisitor
org.elasticsearch.search.internal.MaxClauseCountQueryVisitor
public final class MaxClauseCountQueryVisitor
extends org.apache.lucene.search.QueryVisitor
QueryVisitor that counts visited clauses and throws IndexSearcher.TooManyNestedClauses
when the configured maximum is exceeded.
IndexOrDocValuesQuery is treated as a single clause and its inner queries are ignored,
and IndexSortSortedNumericDocValuesRangeQuery is skipped so only the fallback query is counted.
-
Field Summary
Fields inherited from class org.apache.lucene.search.QueryVisitor
EMPTY_VISITOR -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidconsumeTerms(org.apache.lucene.search.Query query, org.apache.lucene.index.Term... terms) voidconsumeTermsMatching(org.apache.lucene.search.Query query, String field, Supplier<org.apache.lucene.util.automaton.ByteRunAutomaton> automaton) intintorg.apache.lucene.search.QueryVisitorgetSubVisitor(org.apache.lucene.search.BooleanClause.Occur occur, org.apache.lucene.search.Query parent) voidmerge(MaxClauseCountQueryVisitor other) voidreset()voidvisitLeaf(org.apache.lucene.search.Query query) Methods inherited from class org.apache.lucene.search.QueryVisitor
acceptField, termCollector
-
Constructor Details
-
MaxClauseCountQueryVisitor
public MaxClauseCountQueryVisitor(int maxClauseCount)
-
-
Method Details
-
getMaxClauseCount
public int getMaxClauseCount() -
getNumClauses
public int getNumClauses() -
reset
public void reset() -
merge
-
getSubVisitor
public org.apache.lucene.search.QueryVisitor getSubVisitor(org.apache.lucene.search.BooleanClause.Occur occur, org.apache.lucene.search.Query parent) - Overrides:
getSubVisitorin classorg.apache.lucene.search.QueryVisitor
-
visitLeaf
public void visitLeaf(org.apache.lucene.search.Query query) - Overrides:
visitLeafin classorg.apache.lucene.search.QueryVisitor
-
consumeTerms
public void consumeTerms(org.apache.lucene.search.Query query, org.apache.lucene.index.Term... terms) - Overrides:
consumeTermsin classorg.apache.lucene.search.QueryVisitor
-
consumeTermsMatching
public void consumeTermsMatching(org.apache.lucene.search.Query query, String field, Supplier<org.apache.lucene.util.automaton.ByteRunAutomaton> automaton) - Overrides:
consumeTermsMatchingin classorg.apache.lucene.search.QueryVisitor
-