[ 
https://issues.apache.org/jira/browse/SOLR-4027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Yonik Seeley closed SOLR-4027.
------------------------------

    Resolution: Not A Problem

This is working as designed.
Currently {!foo} type queries cannot be directly embedded in lucene queries 
without the use of the magic \_query\_ field (and starting things off with a 
paren instead of \{\! makes the query syntax default to lucene).
                
> Parse exception with geofilt in parens
> --------------------------------------
>
>                 Key: SOLR-4027
>                 URL: https://issues.apache.org/jira/browse/SOLR-4027
>             Project: Solr
>          Issue Type: Bug
>          Components: query parsers
>    Affects Versions: 4.0
>            Reporter: Mauricio Scheffer
>
> In the sample index that comes with the distro, this works fine:
> [http://localhost:8983/solr/collection1/select?q=*%3A*&fq=%7B!geofilt%20sfield%3Dstore%20pt%3D26%2C-80%20d%3D30%7D]
> But if you add parens around the geofilt it throws a ParseException:
> [http://localhost:8983/solr/collection1/select?q=*%3A*&fq=%28%7B!geofilt%20sfield%3Dstore%20pt%3D26%2C-80%20d%3D30%7D%29]
> This is of course the simplest possible case. My particular query involves a 
> much more complex query.
> Here's the stack trace:
> {noformat}
> SEVERE: org.apache.solr.common.SolrException: 
> org.apache.lucene.queryparser.clas
> sic.ParseException: Cannot parse '({!type=geofilt pt=26,-80 sfield=store 
> d=30})'
> : Encountered " <RANGE_GOOP> "sfield=store "" at line 1, column 26.
> Was expecting one of:
>     "]" ...
>     "}" ...
>         at 
> org.apache.solr.handler.component.QueryComponent.prepare(QueryCompone
> nt.java:148)
>         at 
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(Sea
> rchHandler.java:185)
>         at 
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandl
> erBase.java:129)
>         at org.apache.solr.core.SolrCore.execute(SolrCore.java:1699)
>         at 
> org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter
> .java:455)
>         at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilte
> r.java:276)
>         at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(Servlet
> Handler.java:1337)
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java
> :484)
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j
> ava:119)
>         at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.jav
> a:524)
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandl
> er.java:233)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandl
> er.java:1065)
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:
> 413)
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandle
> r.java:192)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandle
> r.java:999)
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.j
> ava:117)
>         at 
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(Cont
> extHandlerCollection.java:250)
>         at 
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerColl
> ection.java:149)
>         at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper
> .java:111)
>         at org.eclipse.jetty.server.Server.handle(Server.java:351)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(Abstrac
> tHttpConnection.java:454)
>         at 
> org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(Blockin
> gHttpConnection.java:47)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(Abstra
> ctHttpConnection.java:890)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.header
> Complete(AbstractHttpConnection.java:944)
>         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:634)
>         at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:230)
>         at 
> org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpCo
> nnection.java:66)
>         at 
> org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(So
> cketConnector.java:254)
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPoo
> l.java:599)
>         at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool
> .java:534)
>         at java.lang.Thread.run(Unknown Source)
> Caused by: org.apache.lucene.queryparser.classic.ParseException: Cannot parse 
> '(
> {!type=geofilt pt=26,-80 sfield=store d=30})': Encountered " <RANGE_GOOP> 
> "sfiel
> d=store "" at line 1, column 26.
> Was expecting one of:
>     "]" ...
>     "}" ...
>         at 
> org.apache.lucene.queryparser.classic.QueryParserBase.parse(QueryPars
> erBase.java:125)
>         at 
> org.apache.solr.search.LuceneQParser.parse(LuceneQParserPlugin.java:7
> 2)
>         at org.apache.solr.search.QParser.getQuery(QParser.java:143)
>         at 
> org.apache.solr.handler.component.QueryComponent.prepare(QueryCompone
> nt.java:137)
>         ... 30 more
> Caused by: org.apache.lucene.queryparser.classic.ParseException: Encountered 
> " <
> RANGE_GOOP> "sfield=store "" at line 1, column 26.
> Was expecting one of:
>     "]" ...
>     "}" ...
>         at 
> org.apache.lucene.queryparser.classic.QueryParser.generateParseExcept
> ion(QueryParser.java:708)
>         at 
> org.apache.lucene.queryparser.classic.QueryParser.jj_consume_token(Qu
> eryParser.java:590)
>         at 
> org.apache.lucene.queryparser.classic.QueryParser.Term(QueryParser.ja
> va:417)
>         at 
> org.apache.lucene.queryparser.classic.QueryParser.Clause(QueryParser.
> java:257)
>         at 
> org.apache.lucene.queryparser.classic.QueryParser.Query(QueryParser.j
> ava:181)
>         at 
> org.apache.lucene.queryparser.classic.QueryParser.Clause(QueryParser.
> java:261)
>         at 
> org.apache.lucene.queryparser.classic.QueryParser.Query(QueryParser.j
> ava:181)
>         at 
> org.apache.lucene.queryparser.classic.QueryParser.TopLevelQuery(Query
> Parser.java:170)
>         at 
> org.apache.lucene.queryparser.classic.QueryParserBase.parse(QueryPars
> erBase.java:120)
>         ... 33 more
> {noformat}

--
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

Reply via email to