[ 
https://issues.apache.org/jira/browse/HDFS-5341?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

qus-jiawei updated HDFS-5341:
-----------------------------

    Description: 
When DirectoryScanner doing the scan function, it holding the dataset to diff 
the block info between memory and disk.But it do a lot of disk operation 
because it call the file's getlength funciton.

Once the dataset is locked,heartbeat thread and all DataXceiver thread would be 
blocked.

So,such disk operation should move to the async disk scan


  was:
When DirectoryScanner doing the scan function, it holding the dataset to diff 
the block info between memory and disk.But it do a lot of disk operation 
because it call the file's getlength funciton.

So,such disk operation should move to the async disk scan



>  DirectoryScanner hold the object lock dataset too long in scan,it make the 
> datanode turn into deadnode and block all reciving thread
> -------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-5341
>                 URL: https://issues.apache.org/jira/browse/HDFS-5341
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode
>            Reporter: qus-jiawei
>              Labels: deadlock
>             Fix For: 0.24.0
>
>         Attachments: HDFS-5341.000.patch, HDFS-5341.001.patch, 
> HDFS-5341.002.patch
>
>
> When DirectoryScanner doing the scan function, it holding the dataset to diff 
> the block info between memory and disk.But it do a lot of disk operation 
> because it call the file's getlength funciton.
> Once the dataset is locked,heartbeat thread and all DataXceiver thread would 
> be blocked.
> So,such disk operation should move to the async disk scan



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to