[ 
https://issues.apache.org/jira/browse/SOLR-7435?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14504595#comment-14504595
 ] 

Markus Jelsma commented on SOLR-7435:
-------------------------------------

Ok, this is madness. For some funky reason the following test actually works!

{code}
  @Test
  public void testSOLR7435() throws Exception {
    String[] doc = {"id","1", "a_i", "1", "b_i", "1"};
    assertU(adoc(doc));

    String[] doc1 = {"id","2", "a_i", "1", "b_i", "2"};
    assertU(adoc(doc1));
    
    String[] doc2 = {"id","3", "a_i", "2", "b_i", "3"};
    assertU(adoc(doc2));

    String[] doc3 = {"id","4", "a_i", "3", "b_i", "3"};
    assertU(adoc(doc3));

    assertU(commit());


    ModifiableSolrParams params = new ModifiableSolrParams();
    params.add("q", "*:*");
    params.add("fq", "{!collapse field=a_i}");
    params.add("fq", "{!collapse field=b_i}");
    assertQ(req(params, "indent", "on"), "*[count(//doc)=0]");
  }
{code}

I would expect the same NPE but i get the proper output:

{code}
   [junit4]   2> 3691 T13 C0 oasc.SolrCore.execute [collection1] webapp=null 
path=null 
params={q=*%3A*&fq=%7B%21collapse+field%3Da_i%7D&fq=%7B%21collapse+field%3Db_i%7D&indent=on}
 hits=2 status=0 QTime=113 
   [junit4]   2> 3705 T13 oas.SolrTestCaseJ4.assertQ ERROR REQUEST FAILED: 
xpath=*[count(//doc)=0]
   [junit4]   2>                xml response was: <?xml version="1.0" 
encoding="UTF-8"?>
   [junit4]   2>        <response>
   [junit4]   2> 
   [junit4]   2>        <lst name="responseHeader">
   [junit4]   2>          <int name="status">0</int>
   [junit4]   2>          <int name="QTime">113</int>
   [junit4]   2>        </lst>
   [junit4]   2>        <result name="response" numFound="2" start="0">
   [junit4]   2>          <doc>
   [junit4]   2>            <float name="id">1.0</float>
   [junit4]   2>            <int name="a_i">1</int>
   [junit4]   2>            <int name="b_i">1</int>
   [junit4]   2>            <long 
name="_version_">1499049292930744320</long></doc>
   [junit4]   2>          <doc>
   [junit4]   2>            <float name="id">3.0</float>
   [junit4]   2>            <int name="a_i">2</int>
   [junit4]   2>            <int name="b_i">3</int>
   [junit4]   2>            <long 
name="_version_">1499049292996804608</long></doc>
   [junit4]   2>        </result>
   [junit4]   2>        </response>
{code}

> NPE in FieldCollapsingQParser
> -----------------------------
>
>                 Key: SOLR-7435
>                 URL: https://issues.apache.org/jira/browse/SOLR-7435
>             Project: Solr
>          Issue Type: Bug
>    Affects Versions: 5.1
>            Reporter: Markus Jelsma
>            Priority: Minor
>             Fix For: 5.2
>
>
> Not even sure it would work anyway, i tried to collapse on two distinct 
> fields, ending up with this:
> select?q=*:*&fq={!collapse field=qst}&fq={!collapse field=rdst}
> {code}
> 584550 [qtp1121454968-20] ERROR org.apache.solr.servlet.SolrDispatchFilter  [ 
>   suggests] – null:java.lang.NullPointerException
>         at 
> org.apache.solr.search.CollapsingQParserPlugin$IntScoreCollector.finish(CollapsingQParserPlugin.java:743)
>         at 
> org.apache.solr.search.CollapsingQParserPlugin$IntScoreCollector.finish(CollapsingQParserPlugin.java:780)
>         at 
> org.apache.solr.search.SolrIndexSearcher.buildAndRunCollectorChain(SolrIndexSearcher.java:203)
>         at 
> org.apache.solr.search.SolrIndexSearcher.getDocListNC(SolrIndexSearcher.java:1660)
>         at 
> org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1479)
>         at 
> org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:556)
>         at 
> org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:518)
>         at 
> org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:222)
>         at 
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:143)
>         at org.apache.solr.core.SolrCore.execute(SolrCore.java:1984)
>         at 
> org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:829)
>         at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:446)
>         at 
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:220)
>         at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)
>         at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
>         at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:557)
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075)
>         at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384)
>         at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
>         at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009)
>         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:368)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
>         at 
> org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:53)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:942)
>         at 
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:1004)
>         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640)
>         at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
>         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:745)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to