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

Derby does not prevent dual boot of database from different classloaders on Linux and Mac OS X

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: 10.1.3.3, 10.2.2.1, 10.3.3.1, 10.4.2.1, 10.5.3.1, 10.6.1.0
    • Component/s: Store
    • Labels:
      None
    • Environment:
    • Urgency:
      Urgent
    • Issue & fix info:
      High Value Fix
    • Bug behavior facts:
      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

        1. DualBootRepro.java
          2 kB
          Kathey Marsden
        2. DualBootRepro2.zip
          2 kB
          Kathey Marsden
        3. DERBY-700.diff
          5 kB
          V.Narayanan
        4. DERBY-700.stat
          0.3 kB
          V.Narayanan
        5. DERBY-700_v1_use_to_run_DualBootrepro_multithreaded.diff
          6 kB
          V.Narayanan
        6. DERBY-700_v1_use_to_run_DualBootrepro_multithreaded.stat
          0.3 kB
          V.Narayanan
        7. DualBootRepro_mutltithreaded.tar.bz2
          2 kB
          V.Narayanan
        8. derby700_singleproperty_v1.diff
          34 kB
          Suresh Thalamati
        9. derby700_singleproperty_v1.stat
          0.7 kB
          Suresh Thalamati
        10. derby-700_diff.txt
          37 kB
          Kathey Marsden
        11. derby-700_stat.txt
          0.9 kB
          Kathey Marsden
        12. derby.log
          12 kB
          Kathey Marsden
        13. derby-700_with_NPE_fix_diff.txt
          38 kB
          Kathey Marsden
        14. derby-700_with_NPE_fix_stat.txt
          1.0 kB
          Kathey Marsden
        15. derby-700_06_07_07_diff.txt
          76 kB
          Kathey Marsden
        16. derby-700_06_07_07_stat.txt
          0.9 kB
          Kathey Marsden
        17. releaseNote.html
          3 kB
          Kathey Marsden
        18. releaseNote.html
          3 kB
          Rick Hillegas
        19. derby-700_06_19_2007
          71 kB
          Kathey Marsden
        20. DualBootRepro.java
          6 kB
          Rick Hillegas
        21. derby-700-01-aa-catchOverlappingFileLockException.diff
          2 kB
          Rick Hillegas
        22. derby-700-01-ab-catchOverlappingFileLockException.diff
          16 kB
          Rick Hillegas
        23. derby-700-02-aa-testCleanup.diff
          8 kB
          Rick Hillegas
        24. releaseNote.html
          4 kB
          Kathey Marsden
        25. releaseNote.html
          4 kB
          Myrna van Lunteren

          Issue Links

            Activity

              People

              • Assignee:
                rhillegas Rick Hillegas
                Reporter:
                kmarsden Kathey Marsden
              • Votes:
                2 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: