Return-Path: Delivered-To: apmail-lucene-dev-archive@www.apache.org Received: (qmail 36330 invoked from network); 28 Nov 2010 09:17:00 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 28 Nov 2010 09:17:00 -0000 Received: (qmail 68989 invoked by uid 500); 28 Nov 2010 09:16:59 -0000 Delivered-To: apmail-lucene-dev-archive@lucene.apache.org Received: (qmail 68500 invoked by uid 500); 28 Nov 2010 09:16:58 -0000 Mailing-List: contact dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@lucene.apache.org Delivered-To: mailing list dev@lucene.apache.org Received: (qmail 68493 invoked by uid 99); 28 Nov 2010 09:16:58 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 28 Nov 2010 09:16:58 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.22] (HELO thor.apache.org) (140.211.11.22) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 28 Nov 2010 09:16:57 +0000 Received: from thor (localhost [127.0.0.1]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id oAS9Gb2w023672 for ; Sun, 28 Nov 2010 09:16:37 GMT Message-ID: <7614991.5131290935797137.JavaMail.jira@thor> Date: Sun, 28 Nov 2010 04:16:37 -0500 (EST) From: "Shai Erera (JIRA)" To: dev@lucene.apache.org Subject: [jira] Commented: (LUCENE-2779) Use ReadWriteLock in RAMDirectory In-Reply-To: <10750696.314731290706214515.JavaMail.jira@thor> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/LUCENE-2779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12964516#action_12964516 ] Shai Erera commented on LUCENE-2779: ------------------------------------ I've changed RAMDir to use ConcurrentHashMap and everything works (still need to run contrib and Solr tests) so far, w/o any synchronization (neither synchronize nor RWLock). While I don't expect any major perf gains from this, I think it simplifies the code, a bit. I'll post a patch shortly. > Use ReadWriteLock in RAMDirectory > --------------------------------- > > Key: LUCENE-2779 > URL: https://issues.apache.org/jira/browse/LUCENE-2779 > Project: Lucene - Java > Issue Type: Improvement > Components: Store > Reporter: Shai Erera > Assignee: Shai Erera > Priority: Minor > Fix For: 3.1, 4.0 > > > RAMDirectory synchronizes on its instance in many places to protect access to map of RAMFiles, in addition to updating the sizeInBytes member. In many places the sync is done for 'read' purposes, while only in few places we need 'write' access. So I think ReadWriteLock can be useful. > Also, syncing around sizeInBytes is unnecessary IMO, since it's an AtomicLong ... > I'll post a patch shortly. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org For additional commands, e-mail: dev-help@lucene.apache.org