You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by GitBox <gi...@apache.org> on 2019/06/13 14:27:39 UTC

[GitHub] [hadoop] elek opened a new pull request #962: HDDS-1682. TestEventWatcher.testMetrics is flaky

elek opened a new pull request #962: HDDS-1682. TestEventWatcher.testMetrics is flaky
URL: https://github.com/apache/hadoop/pull/962
 
 
   TestEventWatcher is intermittent. (Failed twice out of 44 executions).
   
   Error is:
   
   {code}
   Tests run: 3, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 7.764 s <<< FAILURE! - in org.apache.hadoop.hdds.server.events.TestEventWatcher
   testMetrics(org.apache.hadoop.hdds.server.events.TestEventWatcher)  Time elapsed: 2.384 s  <<< FAILURE!
   java.lang.AssertionError: expected:<2> but was:<3>
   	at org.junit.Assert.fail(Assert.java:88)
   	at org.junit.Assert.failNotEquals(Assert.java:743)
   	at org.junit.Assert.assertEquals(Assert.java:118)
   	at org.junit.Assert.assertEquals(Assert.java:555)
   	at org.junit.Assert.assertEquals(Assert.java:542)
   	at org.apache.hadoop.hdds.server.events.TestEventWatcher.testMetrics(TestEventWatcher.java:197)
   	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
   	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
   	at java.lang.reflect.Method.invoke(Method.java:498)
   	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
   	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
   	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
   	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
   	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
   	at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
   	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
   	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
   	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
   	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
   	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
   	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
   	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
   	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
   	at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
   	at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:365)
   	at org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun(JUnit4Provider.java:273)
   	at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:238)
   	at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:159)
   	at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:384)
   	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:345)
   	at org.apache.maven.surefire.booter.ForkedBooter.execute(ForkedBooter.java:126)
   	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:418)
   {code}
   
   In the test we do the following:
   
    1. fire start-event1
    2. fire start-event2
    3. fire start-event3
    4. fire end-event1
    5. wait
   
   Usually the event2 and event3 are timed out and event1 is completed but in case of an accidental time between 3 and 4 (in fact between 1 and 4) the event1 also can be timed out.
   
   I improved the unit test and fixed the metrics calculation (completed message should be incremented only if it's not yet timed out).
   
   See: https://issues.apache.org/jira/browse/HDDS-1682

----------------------------------------------------------------
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:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: common-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-issues-help@hadoop.apache.org