[ 
https://issues.apache.org/jira/browse/HDFS-17906?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18073659#comment-18073659
 ] 

ASF GitHub Bot commented on HDFS-17906:
---------------------------------------

pan3793 commented on PR #8416:
URL: https://github.com/apache/hadoop/pull/8416#issuecomment-4249592859

   @Hexiaoqiao, this is a bug fix, do we need to backport it to branch-3.5 and 
branch-3.4? HDFS rolling upgrade is quite an important case




> Fix issue that DataNodes get stuck in infinite loop when meet 
> InvalidBlockReportLeaseException
> ----------------------------------------------------------------------------------------------
>
>                 Key: HDFS-17906
>                 URL: https://issues.apache.org/jira/browse/HDFS-17906
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: datanode
>            Reporter: dzcxzl
>            Assignee: dzcxzl
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 3.6.0
>
>
>  
> HDFS-16942 introduced `InvalidBlockReportLeaseException`, which the NameNode 
> now throws back to the DataNode via RPC when a block report is rejected due 
> to an invalid lease. On a DataNode that also includes HDFS-16942, the 
> exception is caught and `fullBlockReportLeaseId` is reset to 0, allowing the 
> DN to request a new lease on the next heartbeat and retry.
> However, during a rolling upgrade where the NameNode has been upgraded (with 
> HDFS-16942) but DataNodes are still running an older version (without 
> HDFS-16942), the old DataNode code does not have the 
> `InvalidBlockReportLeaseException` handling branch in 
> `BPServiceActor.offerService()`. This causes the DN to enter an infinite 
> failure loop where it can never successfully send a full block report.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to