Uploaded image for project: 'Oozie'
  1. Oozie
  2. OOZIE-2378

org.apache.oozie.client.TestOozieCLI.testAdminInstrumentation is flakey

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • trunk
    • 4.3.0
    • tests
    • None

    Description

      org.apache.oozie.client.TestOozieCLI.testAdminInstrumentation is flakey.

      junit.framework.AssertionFailedError
      	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.oozie.client.TestOozieCLI$57.call(TestOozieCLI.java:1505)
      	at org.apache.oozie.client.TestOozieCLI$57.call(TestOozieCLI.java:1496)
      	at org.apache.oozie.servlet.DagServletTestCase.runTest(DagServletTestCase.java:94)
      	at org.apache.oozie.client.TestOozieCLI.testAdminInstrumentation(TestOozieCLI.java:1496)
      	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 junit.framework.TestCase.runTest(TestCase.java:168)
      	at junit.framework.TestCase.runBare(TestCase.java:134)
      	at junit.framework.TestResult$1.protect(TestResult.java:110)
      	at junit.framework.TestResult.runProtected(TestResult.java:128)
      	at junit.framework.TestResult.run(TestResult.java:113)
      	at junit.framework.TestCase.run(TestCase.java:124)
      	at junit.framework.TestSuite.runTest(TestSuite.java:243)
      	at junit.framework.TestSuite.run(TestSuite.java:238)
      	at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:83)
      	at org.junit.runners.Suite.runChild(Suite.java:128)
      	at org.junit.runners.Suite.runChild(Suite.java:24)
      	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      	at java.lang.Thread.run(Thread.java:744)
      

      If testAdminMetrics() happens to run before testAdminInstrumentation(), then V2AdminServlet will "remember" to use the /metrics endpoint instead of the /instrumentation endpoint because once set, it never gets unset. Even though the tests start a new instance of the servlet each time, the setting is in a static variable, so it persists.

      Attachments

        1. OOZIE-2378.001.patch
          0.7 kB
          Robert Kanter

        Activity

          People

            rkanter Robert Kanter
            rkanter Robert Kanter
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: