[ https://issues.apache.org/jira/browse/SOLR-14557?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17170183#comment-17170183 ]
Mikhail Khludnev edited comment on SOLR-14557 at 8/3/20, 4:45 PM: ------------------------------------------------------------------ Prefix form of local params is quite vulnerable to syntax variations. For example {{filter(..)}} is in a way better position: it encloses full syntax recursively, and have explicit terminator symbol. Nether of these is true for \{{\{!prefix local=param}synta)(}} I see it as a coolhack made years ago and brought much pain for us later. It would be better if -json- explicit structured syntax for queries was introduced right there. was (Author: mkhludnev): Prefix form of local params is quite vulnerable to syntax variations. For example {{filter(..)}} is in a way better position: it encloses full syntax recursively, and have explicit terminator symbol. Nether of these is true for {{{!prefix local=param}synta)(}} I see it as a coolhack made years ago and brought much pain for us later. It would be better if -json- explicit structured syntax for queries was introduced right there. > 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 > Assignee: 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