Uploaded image for project: 'Derby'
  1. Derby
  2. DERBY-6881

Test failures with JDK 9-ea b111

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 10.13.1.0
    • 10.11.1.3, 10.12.1.2, 10.13.1.0
    • Test
    • None
    • Regression Test Failure

    Description

      With JDK 9-ea b111 there are a number of test failures.

      Tests that use ClassLoaderTestSetup fail because the context class loader no longer is a URLClassLoader, which causes a ClassCastException in the class loader magic performed by the test setup:

      java.lang.ClassCastException: jdk.internal.loader.ClassLoaders$AppClassLoader (in module: java.base) cannot be cast to java.net.URLClassLoader (in module: java.base)
      	at org.apache.derbyTesting.junit.ClassLoaderTestSetup$1.run(ClassLoaderTestSetup.java:53)
      	at org.apache.derbyTesting.junit.ClassLoaderTestSetup$1.run(ClassLoaderTestSetup.java:50)
      	at java.security.AccessController.doPrivileged(java.base@9-ea/Native Method)
      	at org.apache.derbyTesting.junit.ClassLoaderTestSetup.makeClassLoader(ClassLoaderTestSetup.java:49)
      	at org.apache.derbyTesting.junit.ClassLoaderTestSetup.setUp(ClassLoaderTestSetup.java:64)
      	at junit.extensions.TestSetup$1.protect(TestSetup.java:20)
      	at junit.extensions.TestSetup.run(TestSetup.java:25)
      	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:58)
      

      CollationTest, CollationTest2, LocalizedAttributeScriptTest and LocalizedDisplayScriptTest have failures, for example:

      junit.framework.AssertionFailedError: Column value mismatch @ column 'ID', row 1:
          Expected: >4<
          Found:    >6<
      
          ID,NAME
          -- ----
         [6, aacorn]
         [4, Acorn]
         [2, Ącorn]
         [0, Smith]
         [5, Śmith]
         [1, Zebra]
         [3, Żebra]
      
      	at org.apache.derbyTesting.junit.BaseTestCase.newAssertionFailedError(BaseTestCase.java:1177)
      	at org.apache.derbyTesting.junit.JDBC.addRsToReport(JDBC.java:1998)
      	at org.apache.derbyTesting.junit.JDBC.assertRowInResultSet(JDBC.java:1497)
      	at org.apache.derbyTesting.junit.JDBC.assertRowInResultSet(JDBC.java:1395)
      	at org.apache.derbyTesting.junit.JDBC.assertFullResultSetMinion(JDBC.java:1257)
      	at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:1168)
      	at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:1125)
      	at org.apache.derbyTesting.junit.JDBC.assertFullResultSet(JDBC.java:1083)
      	at org.apache.derbyTesting.functionTests.tests.lang.CollationTest.checkLangBasedQuery(CollationTest.java:2055)
      	at org.apache.derbyTesting.functionTests.tests.lang.CollationTest.testNorwayCollation(CollationTest.java:482)
      	at org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:120)
      	at org.apache.derbyTesting.junit.BaseJDBCTestCase.runBareOverridable(BaseJDBCTestCase.java:443)
      	at org.apache.derbyTesting.junit.BaseJDBCTestCase.runBare(BaseJDBCTestCase.java:460)
      	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
      	at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
      	at junit.extensions.TestSetup.run(TestSetup.java:25)
      	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
      	at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
      	at junit.extensions.TestSetup.run(TestSetup.java:25)
      	at org.apache.derbyTesting.junit.BaseTestSetup.run(BaseTestSetup.java:58)
      	at junit.extensions.TestDecorator.basicRun(TestDecorator.java:24)
      	at junit.extensions.TestSetup$1.protect(TestSetup.java:21)
      	at junit.extensions.TestSetup.run(TestSetup.java:25)
      Caused by: junit.framework.AssertionFailedError: Column value mismatch @ column 'ID', row 1:
          Expected: >4<
          Found:    >6<
      	at org.apache.derbyTesting.junit.JDBC.assertRowInResultSet(JDBC.java:1492)
      

      And the stack trace deletion patterns in the Sed class seem to be missing out on some stack frames now, causing failures like this one in dblook_test and dblook_test_territory:

      ********* Diff file derbyall/derbytools/dblook_test.diff
      *** Start: dblook_test jdk9-ea derbyall:derbytools 2016-03-29 14:16:38 ***
      6511a6512
      > 	at java.io.FileInputStream.open0(java.base@9-ea/Native Method)
      Test Failed.
      

      Attachments

        1. d6881-sed.diff
          2 kB
          Knut Anders Hatlen
        2. d6881-classloader.diff
          2 kB
          Knut Anders Hatlen

        Issue Links

          Activity

            People

              knutanders Knut Anders Hatlen
              knutanders Knut Anders Hatlen
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: