zhangshuyan0 commented on code in PR #5855:
URL: https://github.com/apache/hadoop/pull/5855#discussion_r1280525397


##########
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/NameNodeRpcServer.java:
##########
@@ -1650,7 +1650,7 @@ public DatanodeCommand blockReport(final 
DatanodeRegistration nodeReg,
           final int index = r;
           noStaleStorages = bm.runBlockOp(() ->
             bm.processReport(nodeReg, reports[index].getStorage(),
-                blocks, context));
+                blocks, context, reports.length, index + 1));

Review Comment:
   Thanks for reminding me of the shortcomings of my plan. I will try to 
improve it. However, the solution in this PR may not work. If datanode send one 
storage report per RPC,  `reports.length` will be 1 here. Your code 
`totalReportNum == currentReportNum` will always be true. So block report lease 
will be removed as before. This repairing will be ineffective.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to