You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Igor Bolotin (JIRA)" <ji...@apache.org> on 2006/04/15 07:42:01 UTC
[jira] Updated: (HADOOP-139) Deadlock in LocalFileSystem
lock/release
[ http://issues.apache.org/jira/browse/HADOOP-139?page=all ]
Igor Bolotin updated HADOOP-139:
--------------------------------
Attachment: deadlock.patch
Attached is proposed patch. I removed entire lock/release method synchronization and replaced it with critical section synchronization for sets accesses - leaving channel lock/release calls outside of synchronized statement.
> Deadlock in LocalFileSystem lock/release
> ----------------------------------------
>
> Key: HADOOP-139
> URL: http://issues.apache.org/jira/browse/HADOOP-139
> Project: Hadoop
> Type: Bug
> Components: fs
> Reporter: Igor Bolotin
> Attachments: deadlock.patch
>
> LocalFileSystem lock/release methods marked synchronized and inside they lock file channel - this produces deadlock situation. Let's see how it happens:
> 1. First thread locks the file and starts some long-running process.
> 2. Second thread tries to lock the file and it blocks inside channel lock method. It keeps LocalFileSystem instance "locked" as well.
> 3. First thread finished it's processing and tries to release lock - it blocks because LocalFileSystem instance is "locked" by second thread - both threads are waiting to each other.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira