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

Steve Rowe commented on SOLR-9981:
----------------------------------

My Jenkins found a reproducing RangeFacetTest failure that {{git bisect}} 
blames on commit {{a5dce163}} on this issue:

{noformat}
   [junit4]   2> NOTE: test params are: codec=Asserting(Lucene70): 
{long_ld=PostingsFormat(name=Memory), date_dtd=PostingsFormat(name=Memory), 
string_sd=PostingsFormat(name=Memory), int_id=PostingsFormat(name=Memory), 
id=PostingsFormat(name=Memory), 
double_dd=PostingsFormat(name=LuceneVarGapFixedInterval), 
float_fd=Lucene50(blocksize=128)}, 
docValues:{date_dtd=DocValuesFormat(name=Lucene70), 
doubledv=DocValuesFormat(name=Lucene70), 
string_sd=DocValuesFormat(name=Lucene70), 
float_fd=DocValuesFormat(name=Asserting), 
datedv=DocValuesFormat(name=Lucene70), long_ld=DocValuesFormat(name=Lucene70), 
longdv=DocValuesFormat(name=Direct), intdv=DocValuesFormat(name=Asserting), 
int_id=DocValuesFormat(name=Lucene70), id=DocValuesFormat(name=Lucene70), 
stringdvm=DocValuesFormat(name=Direct), double_dd=DocValuesFormat(name=Direct), 
stringdv=DocValuesFormat(name=Lucene70), floatdv=DocValuesFormat(name=Direct)}, 
maxPointsInLeafNode=612, maxMBSortInHeap=5.372483856458917, 
sim=RandomSimilarity(queryNorm=true): {}, locale=ar-EG, timezone=Africa/Malabo
   [junit4]   2> NOTE: Linux 4.1.0-custom2-amd64 amd64/Oracle Corporation 
1.8.0_77 (64-bit)/cpus=16,threads=1,free=213293520,total=372768768
   [junit4]   2> NOTE: All tests run in this JVM: [FieldFacetExtrasTest, 
RangeFacetTest]
   [junit4]   2> NOTE: reproduce with: ant test  -Dtestcase=RangeFacetTest 
-Dtests.seed=80EA8C5FB908AD34 -Dtests.slow=true -Dtests.locale=ar-EG 
-Dtests.timezone=Africa/Malabo -Dtests.asserts=true 
-Dtests.file.encoding=ISO-8859-1
   [junit4] ERROR   0.00s J2 | RangeFacetTest (suite) <<<
   [junit4]    > Throwable #1: java.lang.IllegalArgumentException: docs were 
sent out-of-order: lastDocID=99 vs docID=5
   [junit4]    >        at 
__randomizedtesting.SeedInfo.seed([80EA8C5FB908AD34]:0)
   [junit4]    >        at 
org.apache.lucene.queries.function.valuesource.IntFieldSource$1.getValueForDoc(IntFieldSource.java:62)
   [junit4]    >        at 
org.apache.lucene.queries.function.valuesource.IntFieldSource$1.access$000(IntFieldSource.java:57)
   [junit4]    >        at 
org.apache.lucene.queries.function.valuesource.IntFieldSource$1$1.fillValue(IntFieldSource.java:104)
   [junit4]    >        at 
org.apache.solr.analytics.statistics.MinMaxStatsCollector.collect(MinMaxStatsCollector.java:68)
   [junit4]    >        at 
org.apache.solr.analytics.statistics.NumericStatsCollector.collect(NumericStatsCollector.java:40)
   [junit4]    >        at 
org.apache.solr.analytics.statistics.AbstractDelegatingStatsCollector.collect(AbstractDelegatingStatsCollector.java:68)
   [junit4]    >        at 
org.apache.solr.analytics.statistics.MedianStatsCollector.collect(MedianStatsCollector.java:57)
   [junit4]    >        at 
org.apache.solr.analytics.accumulator.FacetingAccumulator.collectRange(FacetingAccumulator.java:260)
   [junit4]    >        at 
org.apache.solr.analytics.accumulator.facet.RangeFacetAccumulator.collect(RangeFacetAccumulator.java:38)
   [junit4]    >        at 
org.apache.lucene.search.Weight$DefaultBulkScorer.scoreAll(Weight.java:233)
   [junit4]    >        at 
org.apache.lucene.search.Weight$DefaultBulkScorer.score(Weight.java:184)
   [junit4]    >        at 
org.apache.lucene.search.BulkScorer.score(BulkScorer.java:39)
   [junit4]    >        at 
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:658)
   [junit4]    >        at 
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:462)
   [junit4]    >        at 
org.apache.solr.analytics.accumulator.FacetingAccumulator.processRangeFacets(FacetingAccumulator.java:741)
   [junit4]    >        at 
org.apache.solr.analytics.accumulator.FacetingAccumulator.postProcess(FacetingAccumulator.java:580)
   [junit4]    >        at 
org.apache.solr.analytics.request.AnalyticsStats.execute(AnalyticsStats.java:127)
   [junit4]    >        at 
org.apache.solr.handler.component.AnalyticsComponent.process(AnalyticsComponent.java:45)
   [junit4]    >        at 
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:295)
   [junit4]    >        at 
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:178)
   [junit4]    >        at 
org.apache.solr.core.SolrCore.execute(SolrCore.java:2473)
   [junit4]    >        at 
org.apache.solr.util.TestHarness.query(TestHarness.java:337)
   [junit4]    >        at 
org.apache.solr.util.TestHarness.query(TestHarness.java:319)
   [junit4]    >        at 
org.apache.solr.analytics.facet.RangeFacetTest.beforeClass(RangeFacetTest.java:115)
{noformat}

> Multiple analytics fixes/performance improvements
> -------------------------------------------------
>
>                 Key: SOLR-9981
>                 URL: https://issues.apache.org/jira/browse/SOLR-9981
>             Project: Solr
>          Issue Type: Improvement
>      Security Level: Public(Default Security Level. Issues are Public) 
>            Reporter: Houston Putman
>            Assignee: Dennis Gove
>            Priority: Minor
>              Labels: patch
>             Fix For: master (7.0)
>
>         Attachments: SOLR-9983.patch
>
>
> Included are the following improvements/fixes:
> * Improving the unit test case.
> * Performance fix that stops the reading of ALL lucene segments over and 
> again for each stats collector.
> ** The AtomicReaderContext that refers to the "current " segment is reused.
> ** This fix shows an improvement of about 25% in query time for a dataset of 
> ~10M (=9.8M) records.
> ** Given the nature of the fix, the improvement should get better as the 
> dataset increases.
> * Fix for the NPE during comparison



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to