[ https://issues.apache.org/jira/browse/HDFS-7704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14318524#comment-14318524 ]
Zhe Zhang commented on HDFS-7704: --------------------------------- [~kihwal] Trunk doesn't compile now. I quickly checked the commit log, it seems {{BPServiceActorAction.java}} is missing? It's in the patch though. > DN heartbeat to Active NN may be blocked and expire if connection to Standby > NN continues to time out. > ------------------------------------------------------------------------------------------------------- > > Key: HDFS-7704 > URL: https://issues.apache.org/jira/browse/HDFS-7704 > Project: Hadoop HDFS > Issue Type: Bug > Components: datanode, namenode > Affects Versions: 2.5.0 > Reporter: Rushabh S Shah > Assignee: Rushabh S Shah > Fix For: 2.7.0 > > Attachments: HDFS-7704-v2.patch, HDFS-7704-v3.patch, > HDFS-7704-v4.patch, HDFS-7704-v5.patch, HDFS-7704.patch > > > There are couple of synchronous calls in BPOfferservice (i.e reportBadBlocks > and trySendErrorReport) which will wait for both of the actor threads to > process this calls. > This calls are made with writeLock acquired. > When reportBadBlocks() is blocked at the RPC layer due to unreachable NN, > subsequent heartbeat response processing has to wait for the write lock. It > eventually gets through, but takes too long and it blocks the next heartbeat. > In our HA cluster setup, the standby namenode was taking a long time to > process the request. > Requesting improvement in datanode to make the above calls asynchronous since > these reports don't have any specific > deadlines, so extra few seconds of delay should be acceptable. -- This message was sent by Atlassian JIRA (v6.3.4#6332)