db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Knut Anders Hatlen (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-2122) Optimize ContainerLock.isCompatible()
Date Wed, 29 Nov 2006 14:07:22 GMT
     [ http://issues.apache.org/jira/browse/DERBY-2122?page=all ]

Knut Anders Hatlen updated DERBY-2122:
--------------------------------------

    Attachment: derby-2122-v2.diff
                derby-2122-v2.stat

New and simpler patch attached (v2). This patch keeps the compatibility arrays and builds
bit masks from the arrays when the lock type objects are created. I had to move the definition
of the compatibility arrays to make their values visible in the constructors (the constructors
are called from static initializers, so the definition order of the static final variables
matters).

Derbyall and the JUnit tests ran cleanly. Please review.

> Optimize ContainerLock.isCompatible()
> -------------------------------------
>
>                 Key: DERBY-2122
>                 URL: http://issues.apache.org/jira/browse/DERBY-2122
>             Project: Derby
>          Issue Type: Improvement
>          Components: Store, Performance
>    Affects Versions: 10.2.1.6
>            Reporter: Knut Anders Hatlen
>         Assigned To: Knut Anders Hatlen
>            Priority: Trivial
>         Attachments: derby-2122-v1.diff, derby-2122-v1.stat, derby-2122-v2.diff, derby-2122-v2.stat
>
>
> 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.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message