You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Kihwal Lee (JIRA)" <ji...@apache.org> on 2013/05/01 23:30:18 UTC

[jira] [Commented] (HDFS-4786) WebHdfsFileSystem hangs on close()

    [ https://issues.apache.org/jira/browse/HDFS-4786?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13646962#comment-13646962 ] 

Kihwal Lee commented on HDFS-4786:
----------------------------------

Here is relevant stack trace:

{panel}
"Thread-2" prio=10 tid=0x0000000014159800 nid=0x5724 waiting for monitor entry [0x00000000421a7000]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at org.apache.hadoop.fs.DelegationTokenRenewer.removeRenewAction(DelegationTokenRenewer.java:191)
        - waiting to lock <0x00000000ffab04b0> (a org.apache.hadoop.fs.DelegationTokenRenewer)
        at org.apache.hadoop.hdfs.web.WebHdfsFileSystem.close(WebHdfsFileSystem.java:825)
        at org.apache.hadoop.fs.FileSystem$Cache.closeAll(FileSystem.java:2402)
        - locked <0x00000000ffac8210> (a org.apache.hadoop.fs.FileSystem$Cache)
        at org.apache.hadoop.fs.FileSystem$Cache$ClientFinalizer.run(FileSystem.java:2419)
        - locked <0x00000000ffac8200> (a org.apache.hadoop.fs.FileSystem$Cache$ClientFinalizer)
        at org.apache.hadoop.util.ShutdownHookManager$1.run(ShutdownHookManager.java:54)

"FileSystem-DelegationTokenRenewer" daemon prio=10 tid=0x0000000013f9b800 nid=0x5723 waiting on condition [0x00000000420a6000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at sun.misc.Unsafe.park(Native Method)
        - parking to wait for  <0x00000000ffab0530> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
        at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
        at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082)
        at java.util.concurrent.DelayQueue.take(DelayQueue.java:220)
        at org.apache.hadoop.fs.DelegationTokenRenewer.run(DelegationTokenRenewer.java:215)
        - locked <0x00000000ffab04b0> (a org.apache.hadoop.fs.DelegationTokenRenewer)
{panel}
                
> WebHdfsFileSystem hangs on close()
> ----------------------------------
>
>                 Key: HDFS-4786
>                 URL: https://issues.apache.org/jira/browse/HDFS-4786
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: webhdfs
>    Affects Versions: 2.0.4-alpha
>            Reporter: Kihwal Lee
>
> When close() is called via fs shoutdown hook, the synchronized method, removeRenewAction() hangs. This is because DelegationTokenRenewer calls DelayQueue.take() inside a synchronized block. Since this is a blocking call, it hangs forever.

--
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