Heh ... this looks like an incredibly rare fluke.
QueryUtils.check(q) calls QueryUtils.checkHashEquals(q) which does 2
main things:
1) QueryUtils.checkEquals(q,q)
- verify q equals itself
- verify q.hashCode returns the same thing twice
2) make a "whacky" Query that only equals itself and uses
System.identityHashCode, then call checkUnequal(q, whacky)
- verify ! q equal whacky
- verify ! q.hashCode equals shacky.hashCode
...that last assert is where we got this failure ... because by fluke, the
"whacky" query constructed on the fly had a
System.identityHashCode equal to the hashcode of the BooleanQuery passed
to QueryUtils.check.
checkUnequal actually has a comment...
// possible this test can fail on a hash collision... if that
// happens, please change test to use a different example.
assertTrue(q1.hashCode() != q2.hashCode());
...but that comment is only relevant if the reason for the collision is
that you explicitly picked 2 queries and got unlucky and can change
them in the code ... it doesn't help if one of the queries is
a programatically "whacky" query.
perhaps checkHashEquals should stop calling checkUnequal explicitly, and
just do the !equals tests of q vs whacky itself?
: Date: Sun, 10 Jul 2016 04:49:24 +0000 (UTC)
: From: Policeman Jenkins Server <[email protected]>
: Reply-To: [email protected]
: To: [email protected]
: Subject: [JENKINS-EA] Lucene-Solr-6.x-Linux (32bit/jdk-9-ea+125) - Build #
: 1108 - Failure!
:
: Build: http://jenkins.thetaphi.de/job/Lucene-Solr-6.x-Linux/1108/
: Java: 32bit/jdk-9-ea+125 -client -XX:+UseConcMarkSweepGC
:
: 1 tests failed.
: FAILED: org.apache.lucene.search.TestBooleanMinShouldMatch.testRandomQueries
:
: Error Message:
:
:
: Stack Trace:
: junit.framework.AssertionFailedError
: at
__randomizedtesting.SeedInfo.seed([8EDC0B0E3329EF98:D0F7BBE20BF3C206]:0)
: at junit.framework.Assert.fail(Assert.java:48)
: at junit.framework.Assert.assertTrue(Assert.java:20)
: at junit.framework.Assert.assertTrue(Assert.java:27)
: at org.apache.lucene.search.QueryUtils.checkUnequal(QueryUtils.java:99)
: at
org.apache.lucene.search.QueryUtils.checkHashEquals(QueryUtils.java:82)
: at org.apache.lucene.search.QueryUtils.check(QueryUtils.java:56)
: at
org.apache.lucene.search.AssertingIndexSearcher.rewrite(AssertingIndexSearcher.java:84)
: at
org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:734)
: at
org.apache.lucene.search.AssertingIndexSearcher.createNormalizedWeight(AssertingIndexSearcher.java:57)
: at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:473)
: at org.apache.lucene.search.QueryUtils.checkSkipTo(QueryUtils.java:337)
: at org.apache.lucene.search.QueryUtils.check(QueryUtils.java:125)
: at org.apache.lucene.search.QueryUtils.check(QueryUtils.java:118)
: at
org.apache.lucene.search.TestBooleanMinShouldMatch.testRandomQueries(TestBooleanMinShouldMatch.java:354)
: at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(java.base@9-ea/Native
Method)
: at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(java.base@9-ea/NativeMethodAccessorImpl.java:62)
: at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(java.base@9-ea/DelegatingMethodAccessorImpl.java:43)
: at java.lang.reflect.Method.invoke(java.base@9-ea/Method.java:533)
: at
com.carrotsearch.randomizedtesting.RandomizedRunner.invoke(RandomizedRunner.java:1764)
: at
com.carrotsearch.randomizedtesting.RandomizedRunner$8.evaluate(RandomizedRunner.java:871)
: at
com.carrotsearch.randomizedtesting.RandomizedRunner$9.evaluate(RandomizedRunner.java:907)
: at
com.carrotsearch.randomizedtesting.RandomizedRunner$10.evaluate(RandomizedRunner.java:921)
: at
org.apache.lucene.util.TestRuleSetupTeardownChained$1.evaluate(TestRuleSetupTeardownChained.java:49)
: at
org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
: at
org.apache.lucene.util.TestRuleThreadAndTestName$1.evaluate(TestRuleThreadAndTestName.java:48)
: at
org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
: at
org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
: at
com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
: at
com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:367)
: at
com.carrotsearch.randomizedtesting.ThreadLeakControl.forkTimeoutingTask(ThreadLeakControl.java:809)
: at
com.carrotsearch.randomizedtesting.ThreadLeakControl$3.evaluate(ThreadLeakControl.java:460)
: at
com.carrotsearch.randomizedtesting.RandomizedRunner.runSingleTest(RandomizedRunner.java:880)
: at
com.carrotsearch.randomizedtesting.RandomizedRunner$5.evaluate(RandomizedRunner.java:781)
: at
com.carrotsearch.randomizedtesting.RandomizedRunner$6.evaluate(RandomizedRunner.java:816)
: at
com.carrotsearch.randomizedtesting.RandomizedRunner$7.evaluate(RandomizedRunner.java:827)
: at
org.apache.lucene.util.AbstractBeforeAfterRule$1.evaluate(AbstractBeforeAfterRule.java:45)
: at
com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
: at
org.apache.lucene.util.TestRuleStoreClassName$1.evaluate(TestRuleStoreClassName.java:41)
: at
com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
: at
com.carrotsearch.randomizedtesting.rules.NoShadowingOrOverridesOnMethodsRule$1.evaluate(NoShadowingOrOverridesOnMethodsRule.java:40)
: 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:53)
: at
org.apache.lucene.util.TestRuleMarkFailure$1.evaluate(TestRuleMarkFailure.java:47)
: at
org.apache.lucene.util.TestRuleIgnoreAfterMaxFailures$1.evaluate(TestRuleIgnoreAfterMaxFailures.java:64)
: at
org.apache.lucene.util.TestRuleIgnoreTestSuites$1.evaluate(TestRuleIgnoreTestSuites.java:54)
: at
com.carrotsearch.randomizedtesting.rules.StatementAdapter.evaluate(StatementAdapter.java:36)
: at
com.carrotsearch.randomizedtesting.ThreadLeakControl$StatementRunner.run(ThreadLeakControl.java:367)
: at java.lang.Thread.run(java.base@9-ea/Thread.java:843)
:
:
:
:
: Build Log:
: [...truncated 359 lines...]
: [junit4] Suite: org.apache.lucene.search.TestBooleanMinShouldMatch
: [junit4] 2> NOTE: reproduce with: ant test
-Dtestcase=TestBooleanMinShouldMatch -Dtests.method=testRandomQueries
-Dtests.seed=8EDC0B0E3329EF98 -Dtests.multiplier=3 -Dtests.slow=true
-Dtests.locale=fr-TG -Dtests.timezone=Asia/Yakutsk -Dtests.asserts=true
-Dtests.file.encoding=UTF-8
: [junit4] FAILURE 0.85s J2 | TestBooleanMinShouldMatch.testRandomQueries <<<
: [junit4] > Throwable #1: junit.framework.AssertionFailedError
: [junit4] > at
__randomizedtesting.SeedInfo.seed([8EDC0B0E3329EF98:D0F7BBE20BF3C206]:0)
: [junit4] > at junit.framework.Assert.fail(Assert.java:48)
: [junit4] > at junit.framework.Assert.assertTrue(Assert.java:20)
: [junit4] > at junit.framework.Assert.assertTrue(Assert.java:27)
: [junit4] > at
org.apache.lucene.search.QueryUtils.checkUnequal(QueryUtils.java:99)
: [junit4] > at
org.apache.lucene.search.QueryUtils.checkHashEquals(QueryUtils.java:82)
: [junit4] > at
org.apache.lucene.search.QueryUtils.check(QueryUtils.java:56)
: [junit4] > at
org.apache.lucene.search.AssertingIndexSearcher.rewrite(AssertingIndexSearcher.java:84)
: [junit4] > at
org.apache.lucene.search.IndexSearcher.createNormalizedWeight(IndexSearcher.java:734)
: [junit4] > at
org.apache.lucene.search.AssertingIndexSearcher.createNormalizedWeight(AssertingIndexSearcher.java:57)
: [junit4] > at
org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:473)
: [junit4] > at
org.apache.lucene.search.QueryUtils.checkSkipTo(QueryUtils.java:337)
: [junit4] > at
org.apache.lucene.search.QueryUtils.check(QueryUtils.java:125)
: [junit4] > at
org.apache.lucene.search.QueryUtils.check(QueryUtils.java:118)
: [junit4] > at
org.apache.lucene.search.TestBooleanMinShouldMatch.testRandomQueries(TestBooleanMinShouldMatch.java:354)
: [junit4] > at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(java.base@9-ea/Native
Method)
: [junit4] > at
jdk.internal.reflect.NativeMethodAccessorImpl.invoke(java.base@9-ea/NativeMethodAccessorImpl.java:62)
: [junit4] > at
jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(java.base@9-ea/DelegatingMethodAccessorImpl.java:43)
: [junit4] > at java.lang.Thread.run(java.base@9-ea/Thread.java:843)
: [junit4] 2> NOTE: test params are: codec=Asserting(Lucene62):
{all=Lucene50(blocksize=128), data=PostingsFormat(name=Memory doPackFST=
false),
id=TestBloomFilteredLucenePostings(BloomFilteringPostingsFormat(Lucene50(blocksize=128)))},
docValues:{}, maxPointsInLeafNode=2021, maxMBSortInHeap=6.357831531498864,
sim=ClassicSimilarity, locale=fr-TG, timezone=Asia/Yakutsk
: [junit4] 2> NOTE: Linux 4.4.0-28-generic i386/Oracle Corporation 9-ea
(32-bit)/cpus=12,threads=1,free=68956792,total=79409152
: [junit4] 2> NOTE: All tests run in this JVM: [TestAutomatonQueryUnicode,
TestCollectionUtil, TestMergedIterator, TestWildcard,
TestDocInverterPerFieldErrorInfo, TestOmitTf, TestTieredMergePolicy,
TestForceMergeForever, TestMaxTermFrequency, TestConjunctions,
TestUpgradeIndexMergePolicy, TestSleepingLockWrapper, TestByteArrayDataInput,
TestConcurrentMergeScheduler, TestCompiledAutomaton, TestUniqueTermCount,
TestLazyProxSkipping, TestSpanContainQuery, TestSegmentTermEnum,
TestTransactionRollback, TestBooleanMinShouldMatch]
: [junit4] Completed [46/433 (1!)] on J2 in 1.19s, 17 tests, 1 failure <<<
FAILURES!
:
: [...truncated 1297 lines...]
: BUILD FAILED
: /home/jenkins/workspace/Lucene-Solr-6.x-Linux/build.xml:740: The following
error occurred while executing this line:
: /home/jenkins/workspace/Lucene-Solr-6.x-Linux/build.xml:684: The following
error occurred while executing this line:
: /home/jenkins/workspace/Lucene-Solr-6.x-Linux/build.xml:59: The following
error occurred while executing this line:
: /home/jenkins/workspace/Lucene-Solr-6.x-Linux/lucene/build.xml:50: The
following error occurred while executing this line:
: /home/jenkins/workspace/Lucene-Solr-6.x-Linux/lucene/common-build.xml:1443:
The following error occurred while executing this line:
: /home/jenkins/workspace/Lucene-Solr-6.x-Linux/lucene/common-build.xml:984:
There were test failures: 433 suites (1 ignored), 3712 tests, 1 failure, 70
ignored (66 assumptions) [seed: 8EDC0B0E3329EF98]
:
: Total time: 9 minutes 7 seconds
: Build step 'Invoke Ant' marked build as failure
: Archiving artifacts
: [WARNINGS] Skipping publisher since build result is FAILURE
: Recording test results
: Email was triggered for: Failure - Any
: Sending email for trigger: Failure - Any
:
:
:
-Hoss
http://www.lucidworks.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]