6 Replies Latest reply: Oct 6, 2006 10:45 PM by 538055 RSS

    JE-3.1.0 -- testLogSizeBasedCheckpoints test failure

    538055
      This is on FreeBSD-6.1/amd64 using Java-1.5.0:

      [junit] Testcase: testLogSizeBasedCheckpoints took 0,84 sec
      [junit] FAILED
      [junit] min expected=8 actual=5
      [junit] junit.framework.AssertionFailedError: min expected=8 actual=5
      [junit] at com.sleepycat.je.recovery.CheckpointActivationTest.testLogSizeBasedCheckpoints(CheckpointActivationTest.java:155)

      Please, advise. Thanks!

      -mi
        • 1. Re: JE-3.1.0 -- testLogSizeBasedCheckpoints test failure
          Charles Lamb
          Hi mi,

          This is a spurious failure, which we see on some platforms. You can safely ignore it.

          Charles Lamb
          • 2. Re: JE-3.1.0 -- testLogSizeBasedCheckpoints test failure
            538055
            I'd like my FreeBSD port -- http://www.freshports.org/java/berkeley-db -- to run these tests automatically after building, so that the user can be sure, her/his development platform is solid.

            It can not do this, if the tests "spuriously fail" sometimes.

            Can't the test be fixed? Thanks!
            • 3. Re: JE-3.1.0 -- testLogSizeBasedCheckpoints test failure
              Linda Lee-Oracle
              I'd like my FreeBSD port --
              http://www.freshports.org/java/berkeley-db -- to run
              these tests automatically after building, so that the
              user can be sure, her/his development platform is
              solid.
              The test has some value for us because it checks an edge case we're concerned about, and we've gotten used to understanding on our own machines whether the failure is an issue or not. It was a tough case to mimic, which is why there are some intermittent failures. But you have a good point here.

              While we'll leave it in the code base, we'll take it out of the default test target in the build file in the next patch release, and we'll put it into one of our meant-for-internal-use test targets. In the meantime, would it work for you to manually remove that specific test from your port?

              Regards,

              Linda
              • 4. Re: JE-3.1.0 -- testLogSizeBasedCheckpoints test failure
                538055
                The test has some value for us because it checks an edge case we're concerned about
                Could it, maybe, just report the value without making a judgement on whether it is a failure or not?
                In the meantime, would it work for you to manually remove that specific test from your port?
                Yes, it would -- how can I do that?

                Thanks!
                • 5. Re: JE-3.1.0 -- testLogSizeBasedCheckpoints test failure
                  Linda Lee-Oracle
                  Could it, maybe, just report the value without making
                  a judgement on whether it is a failure or not?
                  Yes, that's a good option too. I'll look at our internal test targets and figure out which one is better -- moving that test case or changing the assertion to a warning.

                  That particular file, com.sleepycat.je.recovery.CheckpointActivationTest.java, has two test cases. You could choose to edit the file and delete the problematic case (testLogSizeBasedCheckpoint) by literally removing the method, or you could rely on the fact that junit identifies test cases by naming convention. In other words, you could simply edit the file to rename the method testLogSizeBasedCheckpoint to something that doesn't start with the prefix "test", like "disabledTestLogSizeBasedCheckpoint" and junit will no longer run that test.

                  Linda
                  • 6. Re: JE-3.1.0 -- testLogSizeBasedCheckpoints test failure
                    538055
                    Thanks, Linda. I'll choose the second option, if you can't offer an assert-to-warning patch by tomorrow. FreeBSD's 6.2 release is nearing, and the ports have to be ready by Oct 9th. :-)

                    Thanks again!