You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by tf...@apache.org on 2016/10/15 23:55:25 UTC
[13/24] lucene-solr:jira/solr-8396: LUCENE-7490: SimpleQueryParser
now parses '*' as MatchAllDocsQuery
LUCENE-7490: SimpleQueryParser now parses '*' as MatchAllDocsQuery
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/4ae1643f
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/4ae1643f
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/4ae1643f
Branch: refs/heads/jira/solr-8396
Commit: 4ae1643f66bb2d90b04b1dd7c12c55d9c24bcd33
Parents: 175370f
Author: Mike McCandless <mi...@apache.org>
Authored: Wed Oct 12 13:30:22 2016 -0400
Committer: Mike McCandless <mi...@apache.org>
Committed: Wed Oct 12 13:30:22 2016 -0400
----------------------------------------------------------------------
lucene/CHANGES.txt | 3 +++
.../apache/lucene/queryparser/simple/SimpleQueryParser.java | 4 ++++
.../lucene/queryparser/simple/TestSimpleQueryParser.java | 7 +++++++
3 files changed, 14 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/4ae1643f/lucene/CHANGES.txt
----------------------------------------------------------------------
diff --git a/lucene/CHANGES.txt b/lucene/CHANGES.txt
index f076be5..1981c52 100644
--- a/lucene/CHANGES.txt
+++ b/lucene/CHANGES.txt
@@ -53,6 +53,9 @@ New Features
in postings for fast wildcard (MultiTermQuery) highlighting.
(David Smiley, Timothy Rodriguez)
+* LUCENE-7490: SimpleQueryParser now parses '*' to MatchAllDocsQuery
+ (Lee Hinman via Mike McCandless)
+
Bug Fixes
* LUCENE-7472: MultiFieldQueryParser.getFieldQuery() drops queries that are
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/4ae1643f/lucene/queryparser/src/java/org/apache/lucene/queryparser/simple/SimpleQueryParser.java
----------------------------------------------------------------------
diff --git a/lucene/queryparser/src/java/org/apache/lucene/queryparser/simple/SimpleQueryParser.java b/lucene/queryparser/src/java/org/apache/lucene/queryparser/simple/SimpleQueryParser.java
index a417d1b..6e05aec 100644
--- a/lucene/queryparser/src/java/org/apache/lucene/queryparser/simple/SimpleQueryParser.java
+++ b/lucene/queryparser/src/java/org/apache/lucene/queryparser/simple/SimpleQueryParser.java
@@ -145,6 +145,10 @@ public class SimpleQueryParser extends QueryBuilder {
/** Parses the query text and returns parsed query */
public Query parse(String queryText) {
+ if ("*".equals(queryText.trim())) {
+ return new MatchAllDocsQuery();
+ }
+
char data[] = queryText.toCharArray();
char buffer[] = new char[data.length];
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/4ae1643f/lucene/queryparser/src/test/org/apache/lucene/queryparser/simple/TestSimpleQueryParser.java
----------------------------------------------------------------------
diff --git a/lucene/queryparser/src/test/org/apache/lucene/queryparser/simple/TestSimpleQueryParser.java b/lucene/queryparser/src/test/org/apache/lucene/queryparser/simple/TestSimpleQueryParser.java
index a8e2327..d70a22c 100644
--- a/lucene/queryparser/src/test/org/apache/lucene/queryparser/simple/TestSimpleQueryParser.java
+++ b/lucene/queryparser/src/test/org/apache/lucene/queryparser/simple/TestSimpleQueryParser.java
@@ -623,4 +623,11 @@ public class TestSimpleQueryParser extends LuceneTestCase {
parseKeyword(sb.toString(), TestUtil.nextInt(random(), 0, 1024)); // no exception
}
}
+
+ public void testStarBecomesMatchAll() throws Exception {
+ Query q = parse("*");
+ assertEquals(q, new MatchAllDocsQuery());
+ q = parse(" * ");
+ assertEquals(q, new MatchAllDocsQuery());
+ }
}