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 "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2022/06/14 08:33:00 UTC

[jira] [Work logged] (HDFS-16631) Enable dfs.datanode.lockmanager.trace In Test

     [ https://issues.apache.org/jira/browse/HDFS-16631?focusedWorklogId=781033&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-781033 ]

ASF GitHub Bot logged work on HDFS-16631:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 14/Jun/22 08:32
            Start Date: 14/Jun/22 08:32
    Worklog Time Spent: 10m 
      Work Description: slfan1989 opened a new pull request, #4438:
URL: https://github.com/apache/hadoop/pull/4438

   JIRA:HDFS-16631. Enable dfs.datanode.lockmanager.trace In Test.
   
   In Jira [HDFS-16600](https://issues.apache.org/jira/browse/HDFS-16600). Fix deadlock on DataNode side. We discussed the issue of deadlock, this is a very meaningful discussion, I was reading the log and found the following:
   
   ```
   2022-05-27 07:39:47,890 [Listener at localhost/36941] WARN datanode.DataSetLockManager (DataSetLockManager.java:lockLeakCheck(261)) -
    not open lock leak check func.
   ```
   
   Looking at the code, I found that there is such a parameter:
   ```
   <property>
       <name>dfs.datanode.lockmanager.trace</name>
       <value>false</value>
       <description>
         If this is true, after shut down datanode lock Manager will print all leak
         thread that not release by lock Manager. Only used for test or trace dead lock
         problem. In produce default set false, because it's have little performance loss.
       </description>
     </property> 
   ```
   
   I think this parameter should be added in the test environment, so that if there is a DN deadlock, the cause can be quickly located.
   
   If my understanding is correct, if a thread needs both read locks and write locks, if this parameter is true, relevant thread information can be printed.
   
   
   




Issue Time Tracking
-------------------

            Worklog Id:     (was: 781033)
    Remaining Estimate: 0h
            Time Spent: 10m

> Enable dfs.datanode.lockmanager.trace In Test
> ---------------------------------------------
>
>                 Key: HDFS-16631
>                 URL: https://issues.apache.org/jira/browse/HDFS-16631
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: datanode
>            Reporter: fanshilun
>            Assignee: fanshilun
>            Priority: Minor
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> In Jira HDFS-16600. Fix deadlock on DataNode side. We discussed the issue of deadlock, this is a very meaningful discussion, I was reading the log and found the following:
> {code:java}
> 2022-05-27 07:39:47,890 [Listener at localhost/36941] WARN datanode.DataSetLockManager (DataSetLockManager.java:lockLeakCheck(261)) -
>  not open lock leak check func.{code}
> Looking at the code, I found that there is such a parameter:
> {code:java}
> <property>
>     <name>dfs.datanode.lockmanager.trace</name>
>     <value>false</value>
>     <description>
>       If this is true, after shut down datanode lock Manager will print all leak
>       thread that not release by lock Manager. Only used for test or trace dead lock
>       problem. In produce default set false, because it's have little performance loss.
>     </description>
>   </property> {code}
> I think this parameter should be added in the test environment, so that if there is a DN deadlock, the cause can be quickly located.
>  



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org