Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
10.1.3.3, 10.2.2.1, 10.3.3.1, 10.4.2.1, 10.5.3.1, 10.6.1.0
-
None
-
ava -version
java version "1.4.2_08"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_08-b03)
Java HotSpot(TM) Client VM (build 1.4.2_08-b03, mixed mode)
also
java version "1.5.0_19"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02-304)
Java HotSpot(TM) Client VM (build 1.5.0_19-137, mixed mode, sharing)
on Mac OS X 10.5.7.ava -version java version "1.4.2_08" Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_08-b03) Java HotSpot(TM) Client VM (build 1.4.2_08-b03, mixed mode) also java version "1.5.0_19" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_19-b02-304) Java HotSpot(TM) Client VM (build 1.5.0_19-137, mixed mode, sharing) on Mac OS X 10.5.7.
-
Urgent
-
High Value Fix
-
Data corruption
Description
Derby does not prevent dual boot from two different classloaders on Linux and Mac OS X.
To reproduce run the program DualBootRepro with no derby jars in your classpath. The program assumes derby.jar is in 10.1.2.1/derby.jar, you can change the location by changing the DERBY_LIB_DIR variable.
On Linux the output is:
$java -cp . DualBootRepro
Loading derby from file:10.1.2.1/derby.jar
10.1.2.1/derby.jar
Booted database in loader java.net.URLClassLoader@8ed465
FAIL: Booted database in 2nd loader java.net.URLClassLoader@dc6a77
On Windows I get the expected output.
$ java -cp . DualBootRepro
Loading derby from file:10.1.2.1/derby.jar
10.1.2.1/derby.jar
Booted database in loader java.net.URLClassLoader@1ac04e8
PASS: Expected exception for dualboot:Another instance of Derby may have already booted the database D:\marsden\repro\dualboot\mydb.
Attachments
Attachments
Issue Links
- depends upon
-
DERBY-2649 An unsuccessful boot attempt of an booted database can potentially delete files in the temp directory that are in use.
- Open
- is related to
-
DERBY-4356 testStartStopManagementFromApplication(org.apache.derbyTesting.functionTests.tests.management.ManagementMBeanTest)junit.framework.AssertionFailedError: expected:<2> but was:<%>
- Closed
- relates to
-
DERBY-4646 Implement dual boot protection on CDC Foundation 1.1/phoneME platform for non-Windows platforms.
- Closed