Return-Path: Delivered-To: apmail-lucene-dev-archive@www.apache.org Received: (qmail 11421 invoked from network); 1 May 2010 12:09:18 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 1 May 2010 12:09:18 -0000 Received: (qmail 11110 invoked by uid 500); 1 May 2010 12:09:17 -0000 Delivered-To: apmail-lucene-dev-archive@lucene.apache.org Received: (qmail 10955 invoked by uid 500); 1 May 2010 12:09:17 -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 10948 invoked by uid 99); 1 May 2010 12:09:17 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 01 May 2010 12:09:17 +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; Sat, 01 May 2010 12:09:15 +0000 Received: from thor (localhost [127.0.0.1]) by thor.apache.org (8.13.8+Sun/8.13.8) with ESMTP id o41C8rBY001069 for ; Sat, 1 May 2010 12:08:53 GMT Message-ID: <11567619.49791272715733711.JavaMail.jira@thor> Date: Sat, 1 May 2010 08:08:53 -0400 (EDT) From: "Mark Miller (JIRA)" To: dev@lucene.apache.org Subject: [jira] Commented: (LUCENE-2421) Hardening of NativeFSLock In-Reply-To: <24749183.5191272547014166.JavaMail.jira@thor> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/LUCENE-2421?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12863011#action_12863011 ] Mark Miller commented on LUCENE-2421: ------------------------------------- I'm still confused on the native/simple working together thing - I don't see where native will respect simple's lock? Am I missing something? Also, its almost more confusing that simple will respect the native lock file, when that file is not even native's actual lock - just its medium for a lock. If they could really work together, why even have a native lock? > Hardening of NativeFSLock > ------------------------- > > Key: LUCENE-2421 > URL: https://issues.apache.org/jira/browse/LUCENE-2421 > Project: Lucene - Java > Issue Type: Improvement > Components: Index > Reporter: Shai Erera > Assignee: Shai Erera > Fix For: 3.1 > > Attachments: LUCENE-2421.patch, LUCENE-2421.patch > > > NativeFSLock create a test lock file which its name might collide w/ another JVM that is running. Very unlikely, but still it happened a couple of times already, since the tests were parallelized. This may result in a false exception thrown from release(), when the lock file's delete() is called and returns false, because the file does not exist (deleted by another JVM already). In addition, release() should give a second attempt to delete() if it fails, since the file may be held temporarily by another process (like AntiVirus) before it fails. The proposed changes are: > 1) Use ManagementFactory.getRuntimeMXBean().getName() as part of the test lock name (should include the process Id) > 2) In release(), if delete() fails, check if the file indeed exists. If it is, let's attempt a re-delete() few ms later. > 3) If (3) still fails, throw an exception. Alternatively, we can attempt a deleteOnExit. > I'll post a patch later today. -- 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