[ https://issues.apache.org/jira/browse/SOLR-3729?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13457520#comment-13457520 ]
Jack Krupansky commented on SOLR-3729: -------------------------------------- I concur that the patch is insufficient. Unfortunately, to prevent both false positives and false negatives, the regex would have to include the full "logic" of what starts and ends a term. Certainly not undoable, but the test cases alone are daunting. Still, it is a shame that the base case of a parenthesized match-all query can't be supported. > ExtendedDismaxQParser (edismax) doesn't parse (*:*) properly > ------------------------------------------------------------ > > Key: SOLR-3729 > URL: https://issues.apache.org/jira/browse/SOLR-3729 > Project: Solr > Issue Type: Bug > Components: query parsers > Affects Versions: 4.0-BETA > Reporter: Jack Krupansky > Attachments: SOLR-3729.patch > > > I just happen to notice that (\*:\*) is not parsed properly by the edismax > (ExtendedDismaxQParser) query parser in 4.0-beta. It appears to require > spaces before and after the \*:\*, otherwise it treats the colon as part of a > wildcard term (see the escaping below). I haven’t tried other releases yet. > My original query: > http://localhost:8983/solr/select/?debugQuery=true&q=(*:*)&defType=edismax > Produces this: > {code} > <str name="rawquerystring">(*:*)</str> > <str name="parsedquery">(+DisjunctionMaxQuery((text:*\:*)))/no_coord</str> > <str name="parsedquery_toString">+(text:*\:*)</str> > <str name="QParser">ExtendedDismaxQParser</str> > {code} > Some variations I tried: > {code} > <str name="rawquerystring">( *:*)</str> > <str name="parsedquery">(+DisjunctionMaxQuery((text:*\:*)))/no_coord</str> > <str name="parsedquery_toString">+(text:*\:*)</str> > > <str name="rawquerystring">(*:* )</str> > <str name="parsedquery">(+DisjunctionMaxQuery((text:*\:*)))/no_coord</str> > <str name="parsedquery_toString">+(text:*\:*)</str> > > <str name="rawquerystring">( *:* )</str> > <str name="parsedquery">(+MatchAllDocsQuery(*:*))/no_coord</str> > <str name="parsedquery_toString">+*:*</str> > > <str name="rawquerystring">(*:* -fox)</str> > <str name="parsedquery"> > (+(DisjunctionMaxQuery((text:*\:*)) > -DisjunctionMaxQuery((text:fox))))/no_coord > </str> > <str name="parsedquery_toString">+((text:*\:*) -(text:fox))</str> > > <str name="rawquerystring">( *:* -fox)</str> > <str name="parsedquery"> > (+(MatchAllDocsQuery(*:*) -DisjunctionMaxQuery((text:fox))))/no_coord > </str> > <str name="parsedquery_toString">+(*:* -(text:fox))</str> > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org