[ https://issues.apache.org/jira/browse/HDFS-16631?focusedWorklogId=782562&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-782562 ]
ASF GitHub Bot logged work on HDFS-16631: ----------------------------------------- Author: ASF GitHub Bot Created on: 18/Jun/22 02:00 Start Date: 18/Jun/22 02:00 Worklog Time Spent: 10m Work Description: slfan1989 commented on PR #4438: URL: https://github.com/apache/hadoop/pull/4438#issuecomment-1159337745 readLock ``` getVolume(final ExtendedBlock b) getStoredBlock(String bpid, long blkid) Set<? extends Replica> deepCopyReplica(String bpid) getBlockInputStream(ExtendedBlock b, long seekOffset) moveBlockAcrossStorage(ExtendedBlock block, StorageType targetStorageType, String targetStorageId) moveBlockAcrossVolumes(ExtendedBlock block, FsVolumeSpi destination) ReplicaHandler createRbw(StorageType storageType, String storageId, ExtendedBlock b, boolean allowLazyPersist) Map<DatanodeStorage, BlockListAsLongs> getBlockReports(String bpid) public List<ReplicaInfo> getFinalizedBlocks(String bpid) public boolean contains(final ExtendedBlock block) public String getReplicaString(String bpid, long blockId) public long getReplicaVisibleLength(final ExtendedBlock block) public BlockLocalPathInfo getBlockLocalPathInfo(ExtendedBlock block) ``` Issue Time Tracking ------------------- Worklog Id: (was: 782562) Time Spent: 2h 20m (was: 2h 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 > Labels: pull-request-available > Attachments: image-2022-06-18-09-49-28-725.png > > Time Spent: 2h 20m > 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. > According to suggestions, the following modifications are made: > 1. On the read and write lock related methods of DataSetLockManager, add the > operation name to clearly indicate the source of the lock, which is > convenient for public use. > 2. Increase the granularity of indicator monitoring, including the number of > locks, the time of locks, and the early warning of locks. > -- This message was sent by Atlassian Jira (v8.20.7#820007) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org