You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Susmit Shukla <sh...@gmail.com> on 2016/06/10 19:59:28 UTC

export with collapse filter runs into NPE

Hi,

I'm running this export query, it is working fine. f1 is the uniqueKey and
running solr 5.3.1

/export?q=f1:term1&sort=f1+desc&fl=f1,f2

if I add collapsing filter, it is giving NullPointerException

/export?q=f1:term1&sort=f1+desc&fl=f1,f2&fq={!collapse field=f2}

does collapsing filter work with /export handler?


java.lang.NullPointerException
	at org.apache.lucene.util.BitSetIterator.<init>(BitSetIterator.java:58)
	at org.apache.solr.response.SortingResponseWriter.write(SortingResponseWriter.java:138)
	at org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:53)
	at org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:742)
	at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:471)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:214)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:179)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
	at org.eclipse.jetty.server.Server.handle(Server.java:499)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
	at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
	at java.lang.Thread.run(Thread.java:745)

Re: export with collapse filter runs into NPE

Posted by Erick Erickson <er...@gmail.com>.
Susmit:

re: the second bug:

bq: I ran into another issue - if data in any of the shards is empty, export
throws an error-

This sounds like something that may be already fixed in SOLR-9187
(just committed yesterday). Would it be possible to check a new build?
I ran across this largely by chance when writing tests for that JIRA, but
it certainly sounds similar to what you reported.

Best,
Erick

On Fri, Jun 10, 2016 at 5:51 PM, Joel Bernstein <jo...@gmail.com> wrote:
> Yeah, it sounds like we've got two good bugs here. Feel free to create jira
> tickets for them, I don't believe they've been created yet. It would be
> good to get these fixed for the next release.
>
>
> Joel Bernstein
> http://joelsolr.blogspot.com/
>
> On Fri, Jun 10, 2016 at 7:25 PM, Susmit Shukla <sh...@gmail.com>
> wrote:
>
>> Hi Joel,
>>
>> I would need to join results from 2 solr clouds before collapsing so it
>> would not be an issue right now.
>> I ran into another issue - if data in any of the shards is empty, export
>> throws an error-
>> Once i have atleast one document in each shard, it works fine.
>>
>> org.apache.solr.common.SolrException; null:java.io.IOException:
>> org.apache.solr.search.SyntaxError: xport RankQuery is required for xsort:
>> rq={!xport}
>>
>> at
>>
>> org.apache.solr.response.SortingResponseWriter.write(SortingResponseWriter.java:101)
>>
>> at
>>
>> org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:53)
>>
>> at
>> org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:742)
>>
>> at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:471)
>>
>> ...
>>
>> Caused by: org.apache.solr.search.SyntaxError: xport RankQuery is required
>> for xsort: rq={!xport}
>>
>> ... 26 more
>>
>> On Fri, Jun 10, 2016 at 1:09 PM, Joel Bernstein <jo...@gmail.com>
>> wrote:
>>
>> > This sounds like a bug. I'm pretty sure there are no tests that use
>> > collapse with the export handler.
>> >
>> > Joel Bernstein
>> > http://joelsolr.blogspot.com/
>> >
>> > On Fri, Jun 10, 2016 at 3:59 PM, Susmit Shukla <sh...@gmail.com>
>> > wrote:
>> >
>> > > Hi,
>> > >
>> > > I'm running this export query, it is working fine. f1 is the uniqueKey
>> > and
>> > > running solr 5.3.1
>> > >
>> > > /export?q=f1:term1&sort=f1+desc&fl=f1,f2
>> > >
>> > > if I add collapsing filter, it is giving NullPointerException
>> > >
>> > > /export?q=f1:term1&sort=f1+desc&fl=f1,f2&fq={!collapse field=f2}
>> > >
>> > > does collapsing filter work with /export handler?
>> > >
>> > >
>> > > java.lang.NullPointerException
>> > >         at
>> > > org.apache.lucene.util.BitSetIterator.<init>(BitSetIterator.java:58)
>> > >         at
>> > >
>> >
>> org.apache.solr.response.SortingResponseWriter.write(SortingResponseWriter.java:138)
>> > >         at
>> > >
>> >
>> org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:53)
>> > >         at
>> > >
>> org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:742)
>> > >         at
>> > org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:471)
>> > >         at
>> > >
>> >
>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:214)
>> > >         at
>> > >
>> >
>> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:179)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
>> > >         at
>> > >
>> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
>> > >         at org.eclipse.jetty.server.Server.handle(Server.java:499)
>> > >         at
>> > > org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
>> > >         at
>> > >
>> >
>> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
>> > >         at java.lang.Thread.run(Thread.java:745)
>> > >
>> >
>>

Re: export with collapse filter runs into NPE

Posted by Joel Bernstein <jo...@gmail.com>.
Yeah, it sounds like we've got two good bugs here. Feel free to create jira
tickets for them, I don't believe they've been created yet. It would be
good to get these fixed for the next release.


Joel Bernstein
http://joelsolr.blogspot.com/

On Fri, Jun 10, 2016 at 7:25 PM, Susmit Shukla <sh...@gmail.com>
wrote:

> Hi Joel,
>
> I would need to join results from 2 solr clouds before collapsing so it
> would not be an issue right now.
> I ran into another issue - if data in any of the shards is empty, export
> throws an error-
> Once i have atleast one document in each shard, it works fine.
>
> org.apache.solr.common.SolrException; null:java.io.IOException:
> org.apache.solr.search.SyntaxError: xport RankQuery is required for xsort:
> rq={!xport}
>
> at
>
> org.apache.solr.response.SortingResponseWriter.write(SortingResponseWriter.java:101)
>
> at
>
> org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:53)
>
> at
> org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:742)
>
> at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:471)
>
> ...
>
> Caused by: org.apache.solr.search.SyntaxError: xport RankQuery is required
> for xsort: rq={!xport}
>
> ... 26 more
>
> On Fri, Jun 10, 2016 at 1:09 PM, Joel Bernstein <jo...@gmail.com>
> wrote:
>
> > This sounds like a bug. I'm pretty sure there are no tests that use
> > collapse with the export handler.
> >
> > Joel Bernstein
> > http://joelsolr.blogspot.com/
> >
> > On Fri, Jun 10, 2016 at 3:59 PM, Susmit Shukla <sh...@gmail.com>
> > wrote:
> >
> > > Hi,
> > >
> > > I'm running this export query, it is working fine. f1 is the uniqueKey
> > and
> > > running solr 5.3.1
> > >
> > > /export?q=f1:term1&sort=f1+desc&fl=f1,f2
> > >
> > > if I add collapsing filter, it is giving NullPointerException
> > >
> > > /export?q=f1:term1&sort=f1+desc&fl=f1,f2&fq={!collapse field=f2}
> > >
> > > does collapsing filter work with /export handler?
> > >
> > >
> > > java.lang.NullPointerException
> > >         at
> > > org.apache.lucene.util.BitSetIterator.<init>(BitSetIterator.java:58)
> > >         at
> > >
> >
> org.apache.solr.response.SortingResponseWriter.write(SortingResponseWriter.java:138)
> > >         at
> > >
> >
> org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:53)
> > >         at
> > >
> org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:742)
> > >         at
> > org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:471)
> > >         at
> > >
> >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:214)
> > >         at
> > >
> >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:179)
> > >         at
> > >
> >
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
> > >         at
> > >
> >
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
> > >         at
> > >
> >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
> > >         at
> > >
> >
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
> > >         at
> > >
> >
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
> > >         at
> > >
> >
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
> > >         at
> > >
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
> > >         at
> > >
> >
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
> > >         at
> > >
> >
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
> > >         at
> > >
> >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
> > >         at
> > >
> >
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
> > >         at
> > >
> >
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
> > >         at
> > >
> >
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
> > >         at org.eclipse.jetty.server.Server.handle(Server.java:499)
> > >         at
> > > org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
> > >         at
> > >
> >
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
> > >         at
> > >
> >
> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
> > >         at
> > >
> >
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
> > >         at
> > >
> >
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
> > >         at java.lang.Thread.run(Thread.java:745)
> > >
> >
>

Re: export with collapse filter runs into NPE

Posted by Susmit Shukla <sh...@gmail.com>.
Hi Joel,

I would need to join results from 2 solr clouds before collapsing so it
would not be an issue right now.
I ran into another issue - if data in any of the shards is empty, export
throws an error-
Once i have atleast one document in each shard, it works fine.

org.apache.solr.common.SolrException; null:java.io.IOException:
org.apache.solr.search.SyntaxError: xport RankQuery is required for xsort:
rq={!xport}

at
org.apache.solr.response.SortingResponseWriter.write(SortingResponseWriter.java:101)

at
org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:53)

at org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:742)

at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:471)

...

Caused by: org.apache.solr.search.SyntaxError: xport RankQuery is required
for xsort: rq={!xport}

... 26 more

On Fri, Jun 10, 2016 at 1:09 PM, Joel Bernstein <jo...@gmail.com> wrote:

> This sounds like a bug. I'm pretty sure there are no tests that use
> collapse with the export handler.
>
> Joel Bernstein
> http://joelsolr.blogspot.com/
>
> On Fri, Jun 10, 2016 at 3:59 PM, Susmit Shukla <sh...@gmail.com>
> wrote:
>
> > Hi,
> >
> > I'm running this export query, it is working fine. f1 is the uniqueKey
> and
> > running solr 5.3.1
> >
> > /export?q=f1:term1&sort=f1+desc&fl=f1,f2
> >
> > if I add collapsing filter, it is giving NullPointerException
> >
> > /export?q=f1:term1&sort=f1+desc&fl=f1,f2&fq={!collapse field=f2}
> >
> > does collapsing filter work with /export handler?
> >
> >
> > java.lang.NullPointerException
> >         at
> > org.apache.lucene.util.BitSetIterator.<init>(BitSetIterator.java:58)
> >         at
> >
> org.apache.solr.response.SortingResponseWriter.write(SortingResponseWriter.java:138)
> >         at
> >
> org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:53)
> >         at
> > org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:742)
> >         at
> org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:471)
> >         at
> >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:214)
> >         at
> >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:179)
> >         at
> >
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
> >         at
> >
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
> >         at
> >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
> >         at
> >
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
> >         at
> >
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
> >         at
> >
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
> >         at
> > org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
> >         at
> >
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
> >         at
> >
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
> >         at
> >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
> >         at
> >
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
> >         at
> >
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
> >         at
> >
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
> >         at org.eclipse.jetty.server.Server.handle(Server.java:499)
> >         at
> > org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
> >         at
> >
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
> >         at
> >
> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
> >         at
> >
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
> >         at
> >
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
> >         at java.lang.Thread.run(Thread.java:745)
> >
>

Re: export with collapse filter runs into NPE

Posted by Joel Bernstein <jo...@gmail.com>.
This sounds like a bug. I'm pretty sure there are no tests that use
collapse with the export handler.

Joel Bernstein
http://joelsolr.blogspot.com/

On Fri, Jun 10, 2016 at 3:59 PM, Susmit Shukla <sh...@gmail.com>
wrote:

> Hi,
>
> I'm running this export query, it is working fine. f1 is the uniqueKey and
> running solr 5.3.1
>
> /export?q=f1:term1&sort=f1+desc&fl=f1,f2
>
> if I add collapsing filter, it is giving NullPointerException
>
> /export?q=f1:term1&sort=f1+desc&fl=f1,f2&fq={!collapse field=f2}
>
> does collapsing filter work with /export handler?
>
>
> java.lang.NullPointerException
>         at
> org.apache.lucene.util.BitSetIterator.<init>(BitSetIterator.java:58)
>         at
> org.apache.solr.response.SortingResponseWriter.write(SortingResponseWriter.java:138)
>         at
> org.apache.solr.response.QueryResponseWriterUtil.writeQueryResponse(QueryResponseWriterUtil.java:53)
>         at
> org.apache.solr.servlet.HttpSolrCall.writeResponse(HttpSolrCall.java:742)
>         at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:471)
>         at
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:214)
>         at
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:179)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
>         at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
>         at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
>         at org.eclipse.jetty.server.Server.handle(Server.java:499)
>         at
> org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
>         at
> org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
>         at
> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
>         at java.lang.Thread.run(Thread.java:745)
>