You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Knut Anders Hatlen (JIRA)" <ji...@apache.org> on 2007/02/13 09:04:07 UTC

[jira] Updated: (DERBY-1704) Allow more concurrency in the lock manager

     [ https://issues.apache.org/jira/browse/DERBY-1704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Knut Anders Hatlen updated DERBY-1704:
--------------------------------------

    Attachment: cleanup3.stat
                cleanup3.diff

LockSpace extends Hashtable, but no other classes use its Hashtable methods (except one call to isEmpty()), so the Hashtable could just as well be a private member. Since all the non-private methods of LockSpace are synchronized, the Hashtable could be replaced with an unsynchronized HashMap. cleanup3.diff makes these changes. Derbyall and JUnit passed.

> Allow more concurrency in the lock manager
> ------------------------------------------
>
>                 Key: DERBY-1704
>                 URL: https://issues.apache.org/jira/browse/DERBY-1704
>             Project: Derby
>          Issue Type: Improvement
>          Components: Performance, Services
>    Affects Versions: 10.2.1.6
>            Reporter: Knut Anders Hatlen
>         Assigned To: Knut Anders Hatlen
>            Priority: Minor
>         Attachments: 1cpu.png, 2cpu.png, 8cpu.png, cleanup1.diff, cleanup1.stat, cleanup1.v2.diff, cleanup2.diff, cleanup3.diff, cleanup3.stat, split-hashtables.diff, split-hashtables.stat
>
>
> 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.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.