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

Optimize ContainerLock.isCompatible()

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Trivial
    • Resolution: Fixed
    • 10.2.1.6
    • 10.3.1.4
    • Store
    • None
    • Performance

    Description

      The numbers at http://wiki.apache.org/db-derby/Derby1961MethodCalls indicate that ContainerLock.isCompatible() is called many times per transaction, at least when there are multiple concurrent clients operating on the same containers. Currently, it looks into a two-dimensional array to find out whether two locks are compatible. This could be implemented more efficiently, for instance by having a bit pattern in each ContainerLock object representing which lock types it is compatible with.

      Attachments

        1. derby-2122-v1.diff
          10 kB
          Knut Anders Hatlen
        2. derby-2122-v1.stat
          0.3 kB
          Knut Anders Hatlen
        3. derby-2122-v2.diff
          6 kB
          Knut Anders Hatlen
        4. derby-2122-v2.stat
          0.1 kB
          Knut Anders Hatlen

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          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:

              Slack

                Issue deployment