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]

Reply via email to