[
https://issues.apache.org/jira/browse/IVY-1424?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Charles Duffy (Indeed.com) updated IVY-1424:
--------------------------------------------
Attachment: ivy-nio-locker-as-option.diff
Rather than only fixing the NIO locking system, additionally make it available
as an individually-selectable option.
> NIO FileLocker releases locks while still within tryLock() call
> ---------------------------------------------------------------
>
> Key: IVY-1424
> URL: https://issues.apache.org/jira/browse/IVY-1424
> Project: Ivy
> Issue Type: Bug
> Reporter: Charles Duffy (Indeed.com)
> Labels: patch
> Attachments: ivy-nio-locker-as-option.diff, ivy-nio-locker-fix.diff
>
>
> The notes about NIOFileLocker being deprecated due to unreliability have an
> obvious cause -- locks it grabs have already been released before the tryLock
> method has even exited due to the finally block closing the file descriptor
> on which the lock is held!
> (flock() or fcntl()-based locks, into one of which categories those created
> by NIO fall on modern Unixlike operating systems, are implicitly closed
> whenever the file handle on which they're held exits. This is highly
> desirable behavior, because it means that a lock is implicitly cleared on
> unclean shutdown of any sort -- power failure, SIGKILL to the JVM, etc; this
> behavior is also perhaps the primary reason to prefer NIO locks to the
> approach taken by CreateFileLocker).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira