[ https://issues.apache.org/jira/browse/HDFS-13183?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16380139#comment-16380139 ]
He Xiaoqiao commented on HDFS-13183: ------------------------------------ [~xkrogen] Thanks for your detailed comments, and sorry for slow response. {quote}we should not remove checkOperation altogether, but rather it should be OperationCategory.UNCHECKED. We should have this feature be opt-in.{quote} It is good suggestions, and I will update this issue following your advice. {quote}Additionally the exception that should be thrown to purposefully trigger failover for a client is currently a StandbyException, not a generic IOException. {quote} will client not failover immediately when it meet IOException even if {{NamenodeProtocol#getBlocks}} is idempotent? maybe i don't understand correctly, if that please correct me. Thanks again for [~xkrogen] pushing this. > Standby NameNode process getBlocks request to reduce Active load > ---------------------------------------------------------------- > > Key: HDFS-13183 > URL: https://issues.apache.org/jira/browse/HDFS-13183 > Project: Hadoop HDFS > Issue Type: Improvement > Components: balancer & mover, namenode > Affects Versions: 2.7.5, 3.1.0, 2.9.1, 2.8.4, 3.0.2 > Reporter: He Xiaoqiao > Assignee: He Xiaoqiao > Priority: Major > Attachments: HDFS-13183-trunk.001.patch, HDFS-13183-trunk.002.patch > > > The performance of Active NameNode could be impact when {{Balancer}} requests > #getBlocks, since query blocks of overly full DNs performance is extremely > inefficient currently. The main reason is {{NameNodeRpcServer#getBlocks}} > hold read lock for long time. In extreme case, all handlers of Active > NameNode RPC server are occupied by one reader > {{NameNodeRpcServer#getBlocks}} and other write operation calls, thus Active > NameNode enter a state of false death for number of seconds even for minutes. > The similar performance concerns of Balancer have reported by HDFS-9412, > HDFS-7967, etc. > If Standby NameNode can shoulder #getBlocks heavy burden, it could speed up > the progress of balancing and reduce performance impact to Active NameNode. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org