[
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: [email protected]
For additional commands, e-mail: [email protected]