[ https://issues.apache.org/jira/browse/LUCENE-8708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16811799#comment-16811799 ]
Atri Sharma commented on LUCENE-8708: ------------------------------------- Attached is a WIP patch for the same. There is one existing test which needs to be refactored to comply with the new API, which I will do before the final commit. The intent of this patch is to get early feedback and potential blockers. This commit introduces the concept of ToString interface. While a bit of a controversial change, ToString interface is necessary to allow creation of new Range Queries of a given type post the merge. I am happy to replace it with any other alternatives that seem more sane. [^interval_range_clauses_merging0704.patch] > Can we simplify conjunctions of range queries automatically? > ------------------------------------------------------------ > > Key: LUCENE-8708 > URL: https://issues.apache.org/jira/browse/LUCENE-8708 > Project: Lucene - Core > Issue Type: Improvement > Reporter: Adrien Grand > Priority: Minor > Attachments: interval_range_clauses_merging0704.patch > > > BooleanQuery#rewrite already has some logic to make queries more efficient, > such as deduplicating filters or rewriting boolean queries that wrap a single > positive clause to that clause. > It would be nice to also simplify conjunctions of range queries, so that eg. > {{foo: [5 TO *] AND foo:[* TO 20]}} would be rewritten to {{foo:[5 TO 20]}}. > When constructing queries manually or via the classic query parser, it feels > unnecessary as this is something that the user can fix easily. However if you > want to implement a query parser that only allows specifying one bound at > once, such as Gmail ({{after:2018-12-31}} > https://support.google.com/mail/answer/7190?hl=en) or GitHub > ({{updated:>=2018-12-31}} > https://help.github.com/en/articles/searching-issues-and-pull-requests#search-by-when-an-issue-or-pull-request-was-created-or-last-updated) > then you might end up with inefficient queries if the end user specifies > both an upper and a lower bound. It would be nice if we optimized those > automatically. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org