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

Implement a buffer manager using java.util.concurrent classes

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 10.4.1.3
    • 10.4.1.3
    • Services
    • None
    • Performance

    Description

      There are indications that the buffer manager is a bottleneck for some types of multi-user load. For instance, Anders Morken wrote this in a comment on DERBY-1704: "With a separate table and index for each thread (to remove latch contention and lock waits from the equation) we (...) found that org.apache.derby.impl.services.cache.Clock.find()/release() caused about 5 times more contention than the synchronization in LockSet.lockObject() and LockSet.unlock(). That might be an indicator of where to apply the next push".

      It would be interesting to see the scalability and performance of a buffer manager which exploits the concurrency utilities added in Java SE 5.

      Attachments

        1. d2911-unused.diff
          10 kB
          Knut Anders Hatlen
        2. d2911-unused.stat
          0.7 kB
          Knut Anders Hatlen
        3. d2911perf.java
          3 kB
          Knut Anders Hatlen
        4. d2911-1.diff
          25 kB
          Knut Anders Hatlen
        5. d2911-1.stat
          0.3 kB
          Knut Anders Hatlen
        6. d2911-2.diff
          2 kB
          Knut Anders Hatlen
        7. d2911-3.diff
          2 kB
          Knut Anders Hatlen
        8. d2911-entry-javadoc.diff
          3 kB
          Knut Anders Hatlen
        9. d2911-4.diff
          5 kB
          Knut Anders Hatlen
        10. d2911-5.diff
          5 kB
          Knut Anders Hatlen
        11. d2911-6.diff
          24 kB
          Knut Anders Hatlen
        12. d2911-6.stat
          0.4 kB
          Knut Anders Hatlen
        13. perftest6.pdf
          89 kB
          Knut Anders Hatlen
        14. d2911-7.diff
          6 kB
          Knut Anders Hatlen
        15. d2911-7a.diff
          7 kB
          Knut Anders Hatlen
        16. cleaner.tar
          16 kB
          Knut Anders Hatlen
        17. cleaner.diff
          3 kB
          Knut Anders Hatlen
        18. derby-2911-8.diff
          18 kB
          Knut Anders Hatlen
        19. derby-2911-8.stat
          0.4 kB
          Knut Anders Hatlen
        20. poisson_patch8.tar
          20 kB
          Knut Anders Hatlen
        21. d2911-9.diff
          20 kB
          Knut Anders Hatlen
        22. d2911-9.stat
          0.3 kB
          Knut Anders Hatlen
        23. d2911-10.diff
          16 kB
          Knut Anders Hatlen
        24. d2911-10.stat
          0.2 kB
          Knut Anders Hatlen
        25. d2911-11.diff
          4 kB
          Knut Anders Hatlen
        26. perftest.diff
          47 kB
          Knut Anders Hatlen
        27. perftest.stat
          1.0 kB
          Knut Anders Hatlen
        28. perftest2.diff
          47 kB
          Knut Anders Hatlen
        29. perftest.pdf
          74 kB
          Knut Anders Hatlen
        30. d2911-enable.diff
          1.0 kB
          Knut Anders Hatlen
        31. d2911-12.diff
          11 kB
          Knut Anders Hatlen
        32. d2911-13.diff
          6 kB
          Knut Anders Hatlen
        33. d2911-14.diff
          2 kB
          Knut Anders Hatlen
        34. d2911-15.diff
          9 kB
          Knut Anders Hatlen

        Issue Links

          Activity

            People

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

              Dates

                Created:
                Updated:
                Resolved: