[
https://issues.apache.org/jira/browse/LUCENE-6228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16603588#comment-16603588
]
Steve Rowe commented on LUCENE-6228:
------------------------------------
{{git bisect}} says that the first failing commit for the below reproducing
failures from [https://jenkins.thetaphi.de/job/Lucene-Solr-master-MacOSX/4813/]
is {{910a0231f}} on this issue:
{noformat}
Checking out Revision d997e8b4a2717e000437953c9d66ad1f84229afd
(refs/remotes/origin/master)
[...]
[junit4] 2> NOTE: reproduce with: ant test
-Dtestcase=TestCollapseQParserPlugin
-Dtests.method=testFieldValueCollapseWithNegativeMinMax
-Dtests.seed=D4530DFC3968CF99 -Dtests.slow=true -Dtests.locale=my
-Dtests.timezone=Europe/Vilnius -Dtests.asserts=true -Dtests.file.encoding=UTF-8
[junit4] ERROR 0.04s J0 |
TestCollapseQParserPlugin.testFieldValueCollapseWithNegativeMinMax <<<
[junit4] > Throwable #1: java.lang.RuntimeException: Exception during
query
[junit4] > at
__randomizedtesting.SeedInfo.seed([D4530DFC3968CF99:F8DDBC49F4316038]:0)
[junit4] > at
org.apache.solr.SolrTestCaseJ4.assertQ(SolrTestCaseJ4.java:917)
[junit4] > at
org.apache.solr.SolrTestCaseJ4.assertQ(SolrTestCaseJ4.java:877)
[junit4] > at
org.apache.solr.search.TestCollapseQParserPlugin.testFieldValueCollapseWithNegativeMinMax(TestCollapseQParserPlugin.java:255)
[junit4] > at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[junit4] > at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[junit4] > at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[junit4] > at
java.base/java.lang.reflect.Method.invoke(Method.java:564)
[junit4] > at java.base/java.lang.Thread.run(Thread.java:844)
[junit4] > Caused by: java.lang.NullPointerException
[junit4] > at
org.apache.solr.search.CollapsingQParserPlugin$IntFloatStrategy.collapse(CollapsingQParserPlugin.java:2312)
[junit4] > at
org.apache.solr.search.CollapsingQParserPlugin$IntFieldValueCollector.collect(CollapsingQParserPlugin.java:1170)
[junit4] > at
org.apache.lucene.search.MatchAllDocsQuery$1$1.score(MatchAllDocsQuery.java:62)
[junit4] > at
org.apache.lucene.search.BulkScorer.score(BulkScorer.java:39)
[junit4] > at
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:652)
[junit4] > at
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:443)
[junit4] > at
org.apache.solr.search.SolrIndexSearcher.buildAndRunCollectorChain(SolrIndexSearcher.java:217)
[junit4] > at
org.apache.solr.search.SolrIndexSearcher.getDocListNC(SolrIndexSearcher.java:1622)
[junit4] > at
org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1438)
[junit4] > at
org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:585)
[junit4] > at
org.apache.solr.handler.component.QueryComponent.doProcessUngroupedSearch(QueryComponent.java:1436)
[junit4] > at
org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:375)
[junit4] > at
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:298)
[junit4] > at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)
[junit4] > at
org.apache.solr.core.SolrCore.execute(SolrCore.java:2541)
[junit4] > at
org.apache.solr.util.TestHarness.query(TestHarness.java:338)
[junit4] > at
org.apache.solr.util.TestHarness.query(TestHarness.java:320)
[junit4] > at
org.apache.solr.SolrTestCaseJ4.assertQ(SolrTestCaseJ4.java:891)
[junit4] > ... 40 more
[...]
[junit4] 2> NOTE: reproduce with: ant test
-Dtestcase=TestRandomCollapseQParserPlugin
-Dtests.method=testRandomCollpaseWithSort -Dtests.seed=D4530DFC3968CF99
-Dtests.slow=true -Dtests.locale=ru -Dtests.timezone=America/Jujuy
-Dtests.asserts=true -Dtests.file.encoding=UTF-8
[junit4] ERROR 0.16s J0 |
TestRandomCollapseQParserPlugin.testRandomCollpaseWithSort <<<
[junit4] > Throwable #1: java.lang.RuntimeException: BUG using params:
sort=enum_dv+asc,+collation_en_primary_last+asc,+id+desc&rows=200&fq={!collapse+size%3D7162+nullPolicy%3Dexpand+field%3Dfloat_dv_first+sort%3D'score+desc,+enum_last+asc,+id+asc'}
+ q=*:*&fl=id,float_dv_first
[junit4] > at
__randomizedtesting.SeedInfo.seed([D4530DFC3968CF99:D1EE7E3512C0FC6A]:0)
[junit4] > at
org.apache.solr.search.TestRandomCollapseQParserPlugin.testRandomCollpaseWithSort(TestRandomCollapseQParserPlugin.java:202)
[junit4] > at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[junit4] > at
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
[junit4] > at
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
[junit4] > at
java.base/java.lang.reflect.Method.invoke(Method.java:564)
[junit4] > at java.base/java.lang.Thread.run(Thread.java:844)
[junit4] > Caused by: org.apache.solr.client.solrj.SolrServerException:
org.apache.solr.client.solrj.SolrServerException: java.lang.NullPointerException
[junit4] > at
org.apache.solr.client.solrj.embedded.EmbeddedSolrServer.request(EmbeddedSolrServer.java:233)
[junit4] > at
org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:194)
[junit4] > at
org.apache.solr.client.solrj.SolrClient.query(SolrClient.java:942)
[junit4] > at
org.apache.solr.client.solrj.SolrClient.query(SolrClient.java:957)
[junit4] > at
org.apache.solr.search.TestRandomCollapseQParserPlugin.testRandomCollpaseWithSort(TestRandomCollapseQParserPlugin.java:158)
[junit4] > ... 38 more
[junit4] > Caused by: org.apache.solr.client.solrj.SolrServerException:
java.lang.NullPointerException
[junit4] > at
org.apache.solr.client.solrj.embedded.EmbeddedSolrServer.checkForExceptions(EmbeddedSolrServer.java:301)
[junit4] > at
org.apache.solr.client.solrj.embedded.EmbeddedSolrServer.request(EmbeddedSolrServer.java:192)
[junit4] > ... 42 more
[junit4] > Caused by: java.lang.NullPointerException
[junit4] > at
org.apache.solr.search.CollapsingQParserPlugin$IntSortSpecStrategy.collapse(CollapsingQParserPlugin.java:2513)
[junit4] > at
org.apache.solr.search.CollapsingQParserPlugin$IntFieldValueCollector.collect(CollapsingQParserPlugin.java:1170)
[junit4] > at
org.apache.lucene.search.MatchAllDocsQuery$1$1.score(MatchAllDocsQuery.java:62)
[junit4] > at
org.apache.lucene.search.BulkScorer.score(BulkScorer.java:39)
[junit4] > at
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:652)
[junit4] > at
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:443)
[junit4] > at
org.apache.solr.search.SolrIndexSearcher.buildAndRunCollectorChain(SolrIndexSearcher.java:217)
[junit4] > at
org.apache.solr.search.SolrIndexSearcher.getDocListNC(SolrIndexSearcher.java:1622)
[junit4] > at
org.apache.solr.search.SolrIndexSearcher.getDocListC(SolrIndexSearcher.java:1438)
[junit4] > at
org.apache.solr.search.SolrIndexSearcher.search(SolrIndexSearcher.java:585)
[junit4] > at
org.apache.solr.handler.component.QueryComponent.doProcessUngroupedSearch(QueryComponent.java:1436)
[junit4] > at
org.apache.solr.handler.component.QueryComponent.process(QueryComponent.java:375)
[junit4] > at
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:298)
[junit4] > at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)
[junit4] > at
org.apache.solr.core.SolrCore.execute(SolrCore.java:2541)
[junit4] > at
org.apache.solr.client.solrj.embedded.EmbeddedSolrServer.request(EmbeddedSolrServer.java:191)
[junit4] > ... 42 more
{noformat}
> Do not expose full-fledged scorers in LeafCollector.setScorer
> -------------------------------------------------------------
>
> Key: LUCENE-6228
> URL: https://issues.apache.org/jira/browse/LUCENE-6228
> Project: Lucene - Core
> Issue Type: Improvement
> Reporter: Adrien Grand
> Assignee: Alan Woodward
> Priority: Major
> Fix For: master (8.0)
>
> Attachments: LUCENE-6228.patch, LUCENE-6228.patch, LUCENE-6228.patch,
> LUCENE-6228.patch, LUCENE-6228.patch, LUCENE-6228.patch
>
>
> Currently LeafCollector.setScorer takes a Scorer, which I don't like because
> several methods should never be called in the context of a Collector (like
> nextDoc or advance).
> I think it's even more trappy for methods that might seem to work in some
> particular cases but will not work in the general case, like getChildren
> which will not work if you have a specialized BulkScorer or iterating over
> positions which will not work if you are in a MultiCollector and another leaf
> collector consumes positions too.
> So I think we should restrict what can be seen from a collector to avoid such
> traps.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]