[ https://issues.apache.org/jira/browse/GEODE-8191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17129437#comment-17129437 ]
ASF GitHub Bot commented on GEODE-8191: --------------------------------------- jujoramos commented on a change in pull request #5227: URL: https://github.com/apache/geode/pull/5227#discussion_r437386121 ########## File path: geode-core/src/distributedTest/java/org/apache/geode/management/MemberMXBeanDistributedTest.java ########## @@ -104,8 +105,10 @@ public void testBucketCount() { server2.invoke(() -> getBucketsInitialized()) + server3.invoke(() -> getBucketsInitialized()) + server4.invoke(() -> getBucketsInitialized()); - assertEquals("Expected bucket count is 4000, and actual count is " + sumOfBuckets, - sumOfBuckets, 4000); + assertTrue("Expected bucket count is greather than 3500, and actual count is " + sumOfBuckets, + sumOfBuckets > 3500); Review comment: I believe this change just "hides" the flakiness. If we are expecting a deterministic bucket count between all members, we should find a way to wait for the condition to become true and directly assert that as we were doing before. ########## File path: geode-core/src/distributedTest/java/org/apache/geode/management/MemberMXBeanDistributedTest.java ########## @@ -104,8 +105,10 @@ public void testBucketCount() { server2.invoke(() -> getBucketsInitialized()) + server3.invoke(() -> getBucketsInitialized()) + server4.invoke(() -> getBucketsInitialized()); - assertEquals("Expected bucket count is 4000, and actual count is " + sumOfBuckets, - sumOfBuckets, 4000); + assertTrue("Expected bucket count is greather than 3500, and actual count is " + sumOfBuckets, + sumOfBuckets > 3500); Review comment: Understood, but I still don't think this is the right fix: we're just "masking" the issue, not solving it. The test is creating two partition regions, each one is configured to have `1000` buckets and `1` redundant copy, so the test should assert that we end up having `4000` buckets, not some value higher than `3750`. If we don't fix the race condition within the test, in some time we might see the same failure just because the bucket count is lower than `3750`. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > MemberMXBeanDistributedTest.testBucketCount fails intermittently > ---------------------------------------------------------------- > > Key: GEODE-8191 > URL: https://issues.apache.org/jira/browse/GEODE-8191 > Project: Geode > Issue Type: Bug > Components: jmx, tests > Reporter: Kirk Lund > Assignee: Mario Ivanac > Priority: Major > Labels: flaky > > This appears to be a flaky test related to GEODE-7963 which was resolved by > Mario Ivanac so I've assigned the ticket to him. > {noformat} > org.apache.geode.management.MemberMXBeanDistributedTest > testBucketCount > FAILED > org.awaitility.core.ConditionTimeoutException: Assertion condition > defined as a lambda expression in > org.apache.geode.management.MemberMXBeanDistributedTest Expected bucket count > is 4000, and actual count is 3750 expected:<3750> but was:<4000> within 5 > minutes. > at > org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:165) > at > org.awaitility.core.AssertionCondition.await(AssertionCondition.java:119) > at > org.awaitility.core.AssertionCondition.await(AssertionCondition.java:31) > at > org.awaitility.core.ConditionFactory.until(ConditionFactory.java:895) > at > org.awaitility.core.ConditionFactory.untilAsserted(ConditionFactory.java:679) > at > org.apache.geode.management.MemberMXBeanDistributedTest.testBucketCount(MemberMXBeanDistributedTest.java:102) > Caused by: > java.lang.AssertionError: Expected bucket count is 4000, and actual > count is 3750 expected:<3750> but was:<4000> > at org.junit.Assert.fail(Assert.java:88) > at org.junit.Assert.failNotEquals(Assert.java:834) > at org.junit.Assert.assertEquals(Assert.java:645) > at > org.apache.geode.management.MemberMXBeanDistributedTest.lambda$testBucketCount$1(MemberMXBeanDistributedTest.java:107) > {noformat} -- This message was sent by Atlassian Jira (v8.3.4#803005)