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

Allow more concurrency in the lock manager

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 10.2.1.6
    • 10.3.1.4
    • Services
    • None
    • Normal
    • Performance

    Description

      I have seen indications of severe monitor contention in SinglePool
      (the current lock manager) when multiple threads access a Derby
      database concurrently. When a thread wants to lock an object, it needs
      to obtain the monitor for both SinglePool and LockSet (both of them
      are global synchronization points). This leads to poor scalability.

      We should investigate how to allow more concurrency in the lock
      manager, and either extend SinglePool or implement a new manager.

      Attachments

        1. 1cpu.png
          3 kB
          Knut Anders Hatlen
        2. 2cpu.png
          4 kB
          Knut Anders Hatlen
        3. 8cpu.png
          3 kB
          Knut Anders Hatlen
        4. cleanup1.diff
          7 kB
          Knut Anders Hatlen
        5. cleanup1.stat
          0.3 kB
          Knut Anders Hatlen
        6. cleanup1.v2.diff
          8 kB
          Knut Anders Hatlen
        7. cleanup2.diff
          2 kB
          Knut Anders Hatlen
        8. cleanup3.diff
          6 kB
          Knut Anders Hatlen
        9. cleanup3.stat
          0.2 kB
          Knut Anders Hatlen
        10. cleanup4.diff
          0.6 kB
          Knut Anders Hatlen
        11. cleanup5.diff
          5 kB
          Knut Anders Hatlen
        12. cleanup5.stat
          0.2 kB
          Knut Anders Hatlen
        13. cleanup6.diff
          2 kB
          Knut Anders Hatlen
        14. split-hashtables.diff
          12 kB
          Knut Anders Hatlen
        15. split-hashtables.stat
          0.3 kB
          Knut Anders Hatlen

        Activity

          People

            knutanders Knut Anders Hatlen
            knutanders Knut Anders Hatlen
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: