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

Extremely slow roll forward when booting database that wasn't properly closed

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 10.9.1.0
    • Fix Version/s: None
    • Component/s: Store
    • Environment:
      Windows 7, Embedded mode
    • Urgency:
      Normal
    • Bug behavior facts:
      Performance

      Description

      Reproduction sequence:
      1. Open database in embedded mode
      2. Run a considerably large transaction - for example, one that creates 10 - 20 MB of db logs
      3. Commit
      4. Do NOT close the Connection
      5. Exit the application (through System.exit() for example)
      6. Restart the application and open the database

      Observed:
      Opening connection is extremely slow. It takes up 30- 60 seconds on the 10-20 MB transaction, and for larger transactions it takes forever.

      Looking at the process with FileMon utility, I can see that redo log files are mostly read 1 byte at a time.
      I bet you can improve the performance 100-fold by getting the whole log into memory first.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              sereda Igor Sereda
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated: