[ https://issues.apache.org/jira/browse/DERBY-4669?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13041500#comment-13041500 ]
Knut Anders Hatlen commented on DERBY-4669: ------------------------------------------- Unsealing the sanity package sounds fine to me, as it should have no consequences for the production jars (except the extra entry in the manifest, but that's not a big deal, I think). > ClassLoaderBootTest fails if derbyclient.jar comes before derby.jar on the > classpath > ------------------------------------------------------------------------------------ > > Key: DERBY-4669 > URL: https://issues.apache.org/jira/browse/DERBY-4669 > Project: Derby > Issue Type: Bug > Components: Test > Affects Versions: 10.7.1.1 > Reporter: Kristian Waagan > Priority: Minor > Labels: derby_triage10_8 > Attachments: client-imports.diff, > derby-4669-2a-unseal_iapi_sanity.diff > > > If derbyclient.jar comes before derby.jar on the classpath, and the build is > sane, the test fails. > java -cp derbyclient.jar:derby.jar:derbyTesting.jar:junit.jar > junit.textui.TestRunner > org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest > ... > 1) > testBootingAnAlreadyBootedDatabase(org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest)java.lang.ExceptionInInitializerError > at > org.apache.derby.jdbc.EmbeddedDataSource.findDriver(EmbeddedDataSource.java:500) > at > org.apache.derby.jdbc.EmbeddedDataSource.getConnection(EmbeddedDataSource.java:479) > at > org.apache.derby.jdbc.EmbeddedDataSource.getConnection(EmbeddedDataSource.java:423) > at > org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest.testBootingAnAlreadyBootedDatabase(ClassLoaderBootTest.java:178) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at > org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:109) > 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:57) > 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) > Caused by: java.lang.SecurityException: sealing violation: package > org.apache.derby.iapi.services.sanity is sealed > at java.net.URLClassLoader.defineClass(URLClassLoader.java:234) > at java.net.URLClassLoader.access$000(URLClassLoader.java:58) > at java.net.URLClassLoader$1.run(URLClassLoader.java:197) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:190) > at > org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest$DerbyURLClassLoader.loadClass(ClassLoaderBootTest.java:293) > at > org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest$DerbyURLClassLoader.loadClass(ClassLoaderBootTest.java:303) > at > org.apache.derby.iapi.services.monitor.Monitor.startSystemModule(Monitor.java:369) > at > org.apache.derby.impl.services.monitor.BaseMonitor.runWithState(BaseMonitor.java:386) > at > org.apache.derby.impl.services.monitor.FileMonitor.<init>(FileMonitor.java:60) > at > org.apache.derby.iapi.services.monitor.Monitor.startMonitor(Monitor.java:289) > at org.apache.derby.iapi.jdbc.JDBCBoot.boot(JDBCBoot.java:69) > at org.apache.derby.jdbc.EmbeddedDriver.boot(EmbeddedDriver.java:199) > at > org.apache.derby.jdbc.EmbeddedDriver.<clinit>(EmbeddedDriver.java:96) > ... 33 more > 2) > testBootingDatabaseShutdownByAnotherCLR(org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest)java.lang.ExceptionInInitializerError > at > org.apache.derby.jdbc.EmbeddedDataSource.findDriver(EmbeddedDataSource.java:500) > at > org.apache.derby.jdbc.EmbeddedDataSource.getConnection(EmbeddedDataSource.java:479) > at > org.apache.derby.jdbc.EmbeddedDataSource.getConnection(EmbeddedDataSource.java:423) > at > org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest.testBootingDatabaseShutdownByAnotherCLR(ClassLoaderBootTest.java:208) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at > org.apache.derbyTesting.junit.BaseTestCase.runBare(BaseTestCase.java:109) > 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:57) > 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) > Caused by: java.lang.SecurityException: sealing violation: package > org.apache.derby.iapi.services.sanity is sealed > at java.net.URLClassLoader.defineClass(URLClassLoader.java:234) > at java.net.URLClassLoader.access$000(URLClassLoader.java:58) > at java.net.URLClassLoader$1.run(URLClassLoader.java:197) > at java.security.AccessController.doPrivileged(Native Method) > at java.net.URLClassLoader.findClass(URLClassLoader.java:190) > at > org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest$DerbyURLClassLoader.loadClass(ClassLoaderBootTest.java:293) > at > org.apache.derbyTesting.functionTests.tests.store.ClassLoaderBootTest$DerbyURLClassLoader.loadClass(ClassLoaderBootTest.java:303) > at > org.apache.derby.iapi.services.monitor.Monitor.startSystemModule(Monitor.java:369) > at > org.apache.derby.impl.services.monitor.BaseMonitor.runWithState(BaseMonitor.java:386) > at > org.apache.derby.impl.services.monitor.FileMonitor.<init>(FileMonitor.java:60) > at > org.apache.derby.iapi.services.monitor.Monitor.startMonitor(Monitor.java:289) > at org.apache.derby.iapi.jdbc.JDBCBoot.boot(JDBCBoot.java:69) > at org.apache.derby.jdbc.EmbeddedDriver.boot(EmbeddedDriver.java:199) > at > org.apache.derby.jdbc.EmbeddedDriver.<clinit>(EmbeddedDriver.java:96) > ... 33 more -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira