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

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

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 10.9.1.0
    • None
    • Store
    • Windows 7, Embedded mode
    • Normal
    • 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

            Unassigned Unassigned
            src@almworks.com Igor Sereda
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: