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

          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: