lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sandeep Khanzode <>
Subject Re: Determine whether a MatchAllQuery or a Query with atleast one Term
Date Sat, 28 Nov 2015 11:21:49 GMT
Actually, the MatchAllQuery, for all I know (since it is invoked by the client) can be wrapped
in a Bool Query type. Hence, it is difficult for me to traverse the Bool Query clauses and
determine MatchAll, whereas there may be other clauses which do contain a TermQuery or a NumericRangeQuery
in which case a MatchAllQuery check is futile.
Given any query, Bool Query or MatchAll, or a specific subclass of Query, what would be the
safe way to determine that this is not a MatchAll query without any terms, or whether this
is a query that contains at least one term or range? -----------------------Thanks n Regards,
Sandeep Ramesh Khanzode 

    On Saturday, November 28, 2015 12:30 PM, Michael Wilkowski <>


Sent from Mi phone
On 28 Nov 2015 06:57, "Sandeep Khanzode" <>

> Hi,
> I have a question.
> In my program, I need to check whether the input query is a MatchAll Query
> that contains no terms, or a Query (any variant) that has at least one
> term. For typical Term queries, this seems reasonable to be done with
> Query.extractTerms(Set<> terms) which gives the list of terms.
> However, when there is a NumericRangeQuery, this method throws an
> UnsupportedOperationException.
> How can I determine that a NumericRangeQuery or any non-Term query exists
> in the Input Query and differentiate it from the MatchAllQuery? -- SRK

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message