[ https://issues.apache.org/jira/browse/LUCENE-2421?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12918030#action_12918030 ]
Michael McCandless commented on LUCENE-2421: -------------------------------------------- I'll open a new issue, to remove acquireTestLock... all tests pass with it removed. > 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: 2.9.3, 3.0.2, 3.1, 4.0 > > Attachments: LUCENE-2421-2.patch, LUCENE-2421.patch, > LUCENE-2421.patch, 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-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org