one option is to wrap with constantscorer somewhere and still keep the optimization?
On Tue, Mar 3, 2015 at 11:32 AM, Adrien Grand <[email protected]> wrote: > OK, I found the reason. We have an optimization in disjunctions to > stop calling matches() after a single matching clause has been found > if scores are not needed, but it does not play well with the fact that > some scorers always call score() on the underlying clauses even if > scores are not needed (BooleanScorer in this case, maybe there are > other ones). So I'll disable the optimization. We'll need to better > document when it is legal to call score() if we want to bring it back. > > On Tue, Mar 3, 2015 at 3:57 PM, Adrien Grand <[email protected]> wrote: >> I'm looking into it. >> >> On Tue, Mar 3, 2015 at 3:52 PM, Apache Jenkins Server >> <[email protected]> wrote: >>> Build: https://builds.apache.org/job/Lucene-Solr-NightlyTests-5.x/775/ >>> >>> 1 tests failed. >>> FAILED: org.apache.lucene.search.TestLRUQueryCache.testRandom >>> >>> Error Message: >>> >>> >>> Stack Trace: >>> java.lang.AssertionError >>> at >>> __randomizedtesting.SeedInfo.seed([8AFB9C1E9D5CF8AF:F8B7B9112C3C4EDC]:0) >>> at org.apache.lucene.search.TermScorer.score(TermScorer.java:70) >>> at >>> org.apache.lucene.search.DisjunctionSumScorer.score(DisjunctionSumScorer.java:46) >>> at >>> org.apache.lucene.search.DisjunctionScorer.score(DisjunctionScorer.java:219) >>> at >>> org.apache.lucene.search.ReqExclScorer.score(ReqExclScorer.java:121) >>> at >>> org.apache.lucene.search.BooleanScorer$OrCollector.collect(BooleanScorer.java:142) >>> at >>> org.apache.lucene.search.Weight$DefaultBulkScorer.scoreRange(Weight.java:181) >>> at >>> org.apache.lucene.search.Weight$DefaultBulkScorer.score(Weight.java:171) >>> at >>> org.apache.lucene.search.BooleanScorer$BulkScorerAndDoc.score(BooleanScorer.java:60) >>> at >>> org.apache.lucene.search.BooleanScorer.scoreWindow(BooleanScorer.java:210) >>> at >>> org.apache.lucene.search.BooleanScorer.scoreWindow(BooleanScorer.java:264) >>> at >>> org.apache.lucene.search.BooleanScorer.score(BooleanScorer.java:289) >>> at >>> org.apache.lucene.search.AssertingBulkScorer.score(AssertingBulkScorer.java:79) >>> at >>> org.apache.lucene.search.AssertingBulkScorer.score(AssertingBulkScorer.java:63) >>> at >>> org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:694) >>> at >>> org.apache.lucene.search.AssertingIndexSearcher.search(AssertingIndexSearcher.java:102) >>> at >>> org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:408) >>> at >>> org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:617) >>> at >>> org.apache.lucene.search.IndexSearcher.count(IndexSearcher.java:290) >>> at >>> org.apache.lucene.search.TestLRUQueryCache.testRandom(TestLRUQueryCache.java:923) >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>> at >>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:606) >>> at >>> com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1627) >>> at >>> com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:836) >>> at >>> com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:872) >>> at >>> com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:886) >>> at >>> org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:50) >>> at >>> org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:46) >>> at >>> org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:49) >>> at >>> org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:65) >>> at >>> org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48) >>> at >>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) >>> at >>> com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:365) >>> at >>> com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:798) >>> at >>> com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:458) >>> at >>> com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:845) >>> at >>> com.carrotsearch.randomizedtesting.RandomizedRunner$3.evaluate(RandomizedRunner.java:747) >>> at >>> com.carrotsearch.randomizedtesting.RandomizedRunner$4.evaluate(RandomizedRunner.java:781) >>> at >>> com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:792) >>> at >>> org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:46) >>> at >>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) >>> at >>> org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:42) >>> at >>> com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:39) >>> at >>> com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:39) >>> at >>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) >>> at >>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) >>> at >>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) >>> at >>> org.apache.lucene.util.TestRuleAssertionsRequired$1.evaluate(TestRuleAssertionsRequired.java:54) >>> at >>> org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:48) >>> at >>> org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:65) >>> at >>> org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:55) >>> at >>> com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36) >>> at >>> com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:365) >>> at java.lang.Thread.run(Thread.java:745) >>> >>> >>> >>> >>> Build Log: >>> [...truncated 839 lines...] >>> [junit4] Suite: org.apache.lucene.search.TestLRUQueryCache >>> [junit4] 2> NOTE: download the large Jenkins line-docs file by running >>> 'ant get-jenkins-line-docs' in the lucene directory. >>> [junit4] 2> NOTE: reproduce with: ant test >>> -Dtestcase=TestLRUQueryCache -Dtests.method=testRandom >>> -Dtests.seed=8AFB9C1E9D5CF8AF -Dtests.multiplier=2 -Dtests.nightly=true >>> -Dtests.slow=true >>> -Dtests.linedocsfile=/home/jenkins/lucene-data/enwiki.random.lines.txt >>> -Dtests.locale=en_ZA -Dtests.timezone=Africa/Porto-Novo >>> -Dtests.asserts=true -Dtests.file.encoding=US-ASCII >>> [junit4] FAILURE 19.5s J3 | TestLRUQueryCache.testRandom <<< >>> [junit4] > Throwable #1: java.lang.AssertionError >>> [junit4] > at >>> __randomizedtesting.SeedInfo.seed([8AFB9C1E9D5CF8AF:F8B7B9112C3C4EDC]:0) >>> [junit4] > at >>> org.apache.lucene.search.TermScorer.score(TermScorer.java:70) >>> [junit4] > at >>> org.apache.lucene.search.DisjunctionSumScorer.score(DisjunctionSumScorer.java:46) >>> [junit4] > at >>> org.apache.lucene.search.DisjunctionScorer.score(DisjunctionScorer.java:219) >>> [junit4] > at >>> org.apache.lucene.search.ReqExclScorer.score(ReqExclScorer.java:121) >>> [junit4] > at >>> org.apache.lucene.search.BooleanScorer$OrCollector.collect(BooleanScorer.java:142) >>> [junit4] > at >>> org.apache.lucene.search.Weight$DefaultBulkScorer.scoreRange(Weight.java:181) >>> [junit4] > at >>> org.apache.lucene.search.Weight$DefaultBulkScorer.score(Weight.java:171) >>> [junit4] > at >>> org.apache.lucene.search.BooleanScorer$BulkScorerAndDoc.score(BooleanScorer.java:60) >>> [junit4] > at >>> org.apache.lucene.search.BooleanScorer.scoreWindow(BooleanScorer.java:210) >>> [junit4] > at >>> org.apache.lucene.search.BooleanScorer.scoreWindow(BooleanScorer.java:264) >>> [junit4] > at >>> org.apache.lucene.search.BooleanScorer.score(BooleanScorer.java:289) >>> [junit4] > at >>> org.apache.lucene.search.AssertingBulkScorer.score(AssertingBulkScorer.java:79) >>> [junit4] > at >>> org.apache.lucene.search.AssertingBulkScorer.score(AssertingBulkScorer.java:63) >>> [junit4] > at >>> org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:694) >>> [junit4] > at >>> org.apache.lucene.search.AssertingIndexSearcher.search(AssertingIndexSearcher.java:102) >>> [junit4] > at >>> org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:408) >>> [junit4] > at >>> org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:617) >>> [junit4] > at >>> org.apache.lucene.search.IndexSearcher.count(IndexSearcher.java:290) >>> [junit4] > at >>> org.apache.lucene.search.TestLRUQueryCache.testRandom(TestLRUQueryCache.java:923) >>> [junit4] > at java.lang.Thread.run(Thread.java:745) >>> [junit4] 2> NOTE: leaving temporary files on disk at: >>> /usr/home/jenkins/jenkins-slave/workspace/Lucene-Solr-NightlyTests-5.x/lucene/build/core/test/J3/temp/lucene.search.TestLRUQueryCache >>> 8AFB9C1E9D5CF8AF-001 >>> [junit4] 2> NOTE: test params are: codec=Asserting(Lucene50), >>> sim=DefaultSimilarity, locale=en_ZA, timezone=Africa/Porto-Novo >>> [junit4] 2> NOTE: FreeBSD 9.1-RELEASE-p3 amd64/Oracle Corporation >>> 1.7.0_65 (64-bit)/cpus=16,threads=1,free=148303864,total=313524224 >>> [junit4] 2> NOTE: All tests run in this JVM: >>> [FuzzyTermOnShortTermsTest, TestByteSlices, TestEarlyTermination, >>> TestRollback, TestWildcard, TestDocCount, TestMmapDirectory, >>> TestSpanExplanationsOfNonMatches, TestBagOfPositions, >>> TestInPlaceMergeSorter, TestSparseFixedBitSet, TestAutomaton, Nested1, >>> TestFilteredQuery, TestLucene50TermVectorsFormat, TestDocValuesTermsQuery, >>> TestDocBoost, TestPhraseQuery, TestWindowsMMap, TestFastDecompressionMode, >>> TestMultiLevelSkipList, TestCachingWrapperQuery, TestMatchAllDocsQuery, >>> TestNamedSPILoader, TestBytesRefHash, TestPerFieldPostingsFormat2, >>> TestForUtil, TestIndexWriterForceMerge, TestIndexableField, TestLock, >>> TestMaxTermFrequency, TestIndexWriterOnJRECrash, TestLRUQueryCache] >>> [junit4] Completed on J3 in 25.65s, 12 tests, 1 failure <<< FAILURES! >>> >>> [...truncated 995 lines...] >>> BUILD FAILED >>> /usr/home/jenkins/jenkins-slave/workspace/Lucene-Solr-NightlyTests-5.x/build.xml:536: >>> The following error occurred while executing this line: >>> /usr/home/jenkins/jenkins-slave/workspace/Lucene-Solr-NightlyTests-5.x/build.xml:477: >>> The following error occurred while executing this line: >>> /usr/home/jenkins/jenkins-slave/workspace/Lucene-Solr-NightlyTests-5.x/build.xml:61: >>> The following error occurred while executing this line: >>> /usr/home/jenkins/jenkins-slave/workspace/Lucene-Solr-NightlyTests-5.x/extra-targets.xml:39: >>> The following error occurred while executing this line: >>> /usr/home/jenkins/jenkins-slave/workspace/Lucene-Solr-NightlyTests-5.x/lucene/build.xml:49: >>> The following error occurred while executing this line: >>> /usr/home/jenkins/jenkins-slave/workspace/Lucene-Solr-NightlyTests-5.x/lucene/common-build.xml:1370: >>> The following error occurred while executing this line: >>> /usr/home/jenkins/jenkins-slave/workspace/Lucene-Solr-NightlyTests-5.x/lucene/common-build.xml:976: >>> There were test failures: 419 suites, 3370 tests, 1 failure, 39 ignored >>> (29 assumptions) >>> >>> Total time: 48 minutes 1 second >>> Build step 'Invoke Ant' marked build as failure >>> Archiving artifacts >>> Sending artifact delta relative to Lucene-Solr-NightlyTests-5.x #716 >>> Archived 5 artifacts >>> Archive block size is 32768 >>> Received 0 blocks and 3613290 bytes >>> Compression is 0.0% >>> Took 1 sec >>> Recording test results >>> Email was triggered for: Failure >>> Sending email for trigger: Failure >>> >>> >>> >>> >>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: [email protected] >>> For additional commands, e-mail: [email protected] >> >> >> >> -- >> Adrien > > > > -- > Adrien > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
