Return-Path: Delivered-To: apmail-db-derby-dev-archive@www.apache.org Received: (qmail 60259 invoked from network); 12 Mar 2007 08:38:42 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 12 Mar 2007 08:38:42 -0000 Received: (qmail 45898 invoked by uid 500); 12 Mar 2007 08:38:49 -0000 Delivered-To: apmail-db-derby-dev-archive@db.apache.org Received: (qmail 45871 invoked by uid 500); 12 Mar 2007 08:38:49 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 45862 invoked by uid 99); 12 Mar 2007 08:38:49 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Mar 2007 01:38:49 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Mar 2007 01:34:29 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 6CE0C714044 for ; Mon, 12 Mar 2007 01:34:09 -0700 (PDT) Message-ID: <2903597.1173688449442.JavaMail.jira@brutus> Date: Mon, 12 Mar 2007 01:34:09 -0700 (PDT) From: "Knut Anders Hatlen (JIRA)" To: derby-dev@db.apache.org Subject: [jira] Updated: (DERBY-1704) Allow more concurrency in the lock manager In-Reply-To: <7277312.1155731413837.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/DERBY-1704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Knut Anders Hatlen updated DERBY-1704: -------------------------------------- Attachment: cleanup4.diff Attaching a tiny cleanup patch (cleanup4). LockControl.popFrontWaiter() is identical to removeWaiter(), only that it calls remove() with the constant 0 instead of using a parameter. The patch makes popFrontWaiter() forward calls to removeWaiter(). The tests 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, cleanup4.diff, 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.