Looks like the JoinQParserPlugin is throwing an NPE.
Query: localhost:8983/solr/location/select?q=*:*&fq={!join from=key
to=merchantId fromIndex=merchant}

84343345 [qtp2012387303-16] ERROR org.apache.solr.core.SolrCore  –
java.lang.NullPointerException
    at org.apache.solr.search.JoinQuery.hashCode(JoinQParserPlugin.java:580)
    at org.apache.solr.search.QueryResultKey.<init>(QueryResultKey.java:50)
    at
org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1274)
    at
org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:457)
    at
org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:410)
    at
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:208)
    at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
    at org.apache.solr.core.SolrCore.execute(SolrCore.java:1816)
    at
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:656)
    at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:359)
    at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:155)
    at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
    at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
    at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
    at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
    at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
    at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
    at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
    at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
    at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
    at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
    at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
    at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
    at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.Server.handle(Server.java:365)
    at
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
    at
org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)
    at
org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:937)
    at
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:998)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:856)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
    at
org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)
    at
org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)
    at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    at java.lang.Thread.run(Thread.java:662)

84343350 [qtp2012387303-16] INFO  org.apache.solr.core.SolrCore  –
[location] webapp=/solr path=/select
params={distrib=false&wt=javabin&version=2&rows=10&df=allText&fl=key,score&shard.url=x:8983/solr/location/&NOW=1373999694930&start=0&q=*:*&_=1373999505886&isShard=true&fq={!join+from%3Dkey+to%3DmerchantId+fromIndex%3Dmerchant}&fsv=true}
status=500 QTime=6
84343351 [qtp2012387303-16] ERROR
org.apache.solr.servlet.SolrDispatchFilter  –
null:java.lang.NullPointerException
    at org.apache.solr.search.JoinQuery.hashCode(JoinQParserPlugin.java:580)
    at org.apache.solr.search.QueryResultKey.<init>(QueryResultKey.java:50)
    at
org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1274)
    at
org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:457)
    at
org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:410)
    at
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:208)
    at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
    at org.apache.solr.core.SolrCore.execute(SolrCore.java:1816)
    at
org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:656)
    at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:359)
    at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:155)
    at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1307)
    at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:453)
    at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
    at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
    at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
    at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
    at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
    at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
    at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
    at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
    at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
    at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
    at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
    at org.eclipse.jetty.server.Server.handle(Server.java:365)
    at
org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
    at
org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)
    at
org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:937)
    at
org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:998)
    at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:856)
    at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
    at
org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:72)
    at
org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:264)
    at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
    at
org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
    at java.lang.Thread.run(Thread.java:662)

84343363 [qtp2012387303-17] ERROR org.apache.solr.core.SolrCore  –
org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:
Server at http://x:8983/solr/location returned non ok status:500,
message:Server Error
    at
org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:372)
    at
org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:180)
    at
org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:156)
    at
org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:119)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:662)

84343364 [qtp2012387303-17] INFO  org.apache.solr.core.SolrCore  –
[location] webapp=/solr path=/select
params={indent=true&q=*:*&_=1373999505886&wt=xml&fq={!join+from%3Dkey+to%3DmerchantId+fromIndex%3Dmerchant}}
status=500 QTime=185
84343365 [qtp2012387303-17] ERROR
org.apache.solr.servlet.SolrDispatchFilter  –
null:org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:
Server at http://x:8983/solr/location returned non ok status:500,
message:Server Error
    at
org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:372)
    at
org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:180)
    at
org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:156)
    at
org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:119)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:662)


Thanks,
-Utkarsh



On Tue, Jul 16, 2013 at 5:24 AM, Erick Erickson <erickerick...@gmail.com>wrote:

> Not quite sure what's the problem with the second, but the
> first is:
> q=:
>
> That just isn't legal, try q=*:*
>
> As for the second, are there any other errors in the solr log?
> Sometimes what's returned in the response packet does not
> include the true source of the problem.
>
> Best
> Erick
>
> On Mon, Jul 15, 2013 at 7:40 PM, Utkarsh Sengar <utkarsh2...@gmail.com>
> wrote:
> > I have also tried these queries (as per this SO answer:
> >
> http://stackoverflow.com/questions/12665797/is-solr-4-0-capable-of-using-join-for-multiple-core
> > )
> >
> > 1. http://_server_.com:8983/solr/location/select?q=:&fq={!join
> > from=merchantId to=merchantId fromIndex=merchant}walgreens
> >
> > And I get this:
> >
> > {
> >   "responseHeader":{
> >     "status":400,
> >     "QTime":1,
> >     "params":{
> >       "indent":"true",
> >       "q":":",
> >       "wt":"json",
> >       "fq":"{!join from=merchantId to=merchantId
> > fromIndex=merchant}walgreens"}},
> >   "error":{
> >     "msg":"org.apache.solr.search.SyntaxError: Cannot parse ':':
> > Encountered \" \":\" \": \"\" at line 1, column 0.\nWas expecting one
> > of:\n    <NOT> ...\n    \"+\" ...\n    \"-\" ...\n    <BAREOPER> ...\n
> >    \"(\" ...\n    \"*\" ...\n    <QUOTED> ...\n    <TERM> ...\n
> > <PREFIXTERM> ...\n    <WILDTERM> ...\n    <REGEXPTERM> ...\n    \"[\"
> > ...\n    \"{\" ...\n    <LPARAMS> ...\n    <NUMBER> ...\n    <TERM>
> > ...\n    \"*\" ...\n    ",
> >     "code":400}}
> >
> > And this:
> > 2.http://_server_.com:8983/solr/location/select?q=walgreens&fq={!join
> > from=merchantId to=merchantId fromIndex=merchant}
> >
> > {
> >   "responseHeader":{
> >     "status":500,
> >     "QTime":5,
> >     "params":{
> >       "indent":"true",
> >       "q":"walgreens",
> >       "wt":"json",
> >       "fq":"{!join from=merchantId to=merchantId fromIndex=merchant}"}},
> >   "error":{
> >     "msg":"Server at http://_SERVER_:8983/solr/location returned non
> > ok status:500, message:Server Error",
> >
> "trace":"org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException:
> > Server at http://_SERVER_:8983/solr/location returned non ok
> > status:500, message:Server Error\n\tat
> >
> org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:372)\n\tat
> >
> org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:180)\n\tat
> >
> org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:156)\n\tat
> >
> org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:119)\n\tat
> > java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)\n\tat
> > java.util.concurrent.FutureTask.run(FutureTask.java:138)\n\tat
> >
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)\n\tat
> > java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)\n\tat
> > java.util.concurrent.FutureTask.run(FutureTask.java:138)\n\tat
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)\n\tat
> >
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)\n\tat
> > java.lang.Thread.run(Thread.java:662)\n",
> >     "code":500}}
> >
> > Thanks,
> > -Utkarsh
> >
> >
> >
> > On Mon, Jul 15, 2013 at 4:27 PM, Utkarsh Sengar <utkarsh2...@gmail.com
> >wrote:
> >
> >> Hello,
> >>
> >> I am trying to join data between two cores: merchant and location
> >>
> >> This is my query:
> >> http://_server_.com:8983/solr/location/select?q={!join from=merchantId
> >> to=merchantId fromIndex=merchant}walgreens
> >> Ref: http://wiki.apache.org/solr/Join
> >>
> >>
> >> Merchants core has documents for the query: "walgreens" with an
> merchantId
> >> 1
> >>  A simple query: http://
> _server_.com:8983/solr/location/select?q=walgreens
> >> returns documents called walgreens with merchantId=1
> >>
> >> Location core has documents with merchantId=1 too.
> >>
> >> But my join query returns no documents.
> >>
> >> This is the response I get:
> >> {
> >>   "responseHeader":{
> >>     "status":0,
> >>     "QTime":5,
> >>     "params":{
> >>       "debugQuery":"true",
> >>       "indent":"true",
> >>       "q":"{!join from=merchantId to=merchantId
> >> fromIndex=merchant}walgreens",
> >>       "wt":"json"}},
> >>   "response":{"numFound":0,"start":0,"maxScore":0.0,"docs":[]
> >>   },
> >>   "debug":{
> >>     "rawquerystring":"{!join from=merchantId to=merchantId
> >> fromIndex=merchant}walgreens",
> >>     "querystring":"{!join from=merchantId to=merchantId
> >> fromIndex=merchant}walgreens",
> >>     "parsedquery":"JoinQuery({!join from=merchantId to=merchantId
> >> fromIndex=merchant}allText:walgreens)",
> >>     "parsedquery_toString":"{!join from=merchantId to=merchantId
> >> fromIndex=merchant}allText:walgreens",
> >>     "QParser":"",
> >>     "explain":{}}}
> >>
> >>
> >> Any suggestions?
> >>
> >>
> >> --
> >> Thanks,
> >> -Utkarsh
> >>
> >
> >
> >
> > --
> > Thanks,
> > -Utkarsh
>



-- 
Thanks,
-Utkarsh

Reply via email to