[ https://issues.apache.org/jira/browse/SOLR-14557?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17169645#comment-17169645 ]
Mikhail Khludnev commented on SOLR-14557: ----------------------------------------- Ok. There are two places where local params are parsed: # QParser.parseLocalParams() when string starts with curly brace { # JavaCC QueryParser.jj SOLR-4093 SOLR-11501 banned edismax from the former option. But the former option is unable to handle {{\{!parser}(foo)}} that might seem like a bug, but after thinking a little I've though it's reasonable. Think about {{(\{!term}foo)}}, it should be parsed to {{foo}} undoubtedly, but {{\{!term}(foo)}} behavior quite depended on subordinate parser, TermQParser should receive parenthesis, but LuceneQParser probably shouldn't. So, I resolved it just by advising customer for tweaking syntax: Before 7.2 {{\{!join ...}(... )}} -> after 7.2 {{\_query_:"\{!join ... defType=edixmax}....."}} Sorry for the noise. > Unable to parse local params followed by parenthesis like {!lucene}(gigabyte) > ----------------------------------------------------------------------------- > > Key: SOLR-14557 > URL: https://issues.apache.org/jira/browse/SOLR-14557 > Project: Solr > Issue Type: Bug > Components: query parsers > Reporter: Mikhail Khludnev > Priority: Major > Labels: painful > Attachments: SOLR-14557.patch, SOLR-14557.patch, SOLR-14557.patch > > > h2. Solr 4.5 > {{/select?defType=edismax&q=\{!lucene}(foo)&debugQuery=true}} > > goes like > {code} > <str name="rawquerystring">\{!lucene}(foo)</str> > <str name="parsedquery_toString">content:foo</str> > <str name="QParser">LuceneQParser</str> > {code} > fine > h2. Solr 8.2 > with luceneMatchVersion=4.5 following SOLR-11501 I know it's a grey zone but > it's a question of migrating existing queries. > {{/select?defType=edismax&q=\{!lucene}(foo)&debugQuery=true}} > goes like > {code} > "querystring":"\{!lucene}(foo)", > "parsedquery":"+DisjunctionMaxQuery(((Project.Address:lucene > Project.Address:foo) | (Project.OwnerType:lucene Project.OwnerType:foo) > "QParser":"ExtendedDismaxQParser", > {code} > blah... > but removing braces in 8.2 works perfectly fine > {code} > "querystring":"\{!lucene}foo", > "parsedquery":"+content:foo", > "parsedquery_toString":"+content:foo", > "QParser":"ExtendedDismaxQParser", > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org