From 4c74b4bd7ae864c483f9a2e1ae501ab43cc36de4 Mon Sep 17 00:00:00 2001 From: shangshu-qian <92334720+shangshu-qian@users.noreply.github.com> Date: Sun, 11 May 2025 15:06:16 -0400 Subject: [PATCH] HDFS-17780 retry logic in sendIBR may bypass throttling --- .../hdfs/server/datanode/IncrementalBlockReportManager.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/IncrementalBlockReportManager.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/IncrementalBlockReportManager.java index 3b093a7f59013..7adde61f9b96a 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/IncrementalBlockReportManager.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/IncrementalBlockReportManager.java @@ -212,11 +212,10 @@ void sendIBRs(DatanodeProtocol namenode, DatanodeRegistration registration, namenode.blockReceivedAndDeleted(registration, bpid, reports); success = true; } finally { - + lastIBR = startTime; if (success) { dnMetrics.addIncrementalBlockReport(monotonicNow() - startTime, nnRpcLatencySuffix); - lastIBR = startTime; } else { // If we didn't succeed in sending the report, put all of the // blocks back onto our queue, but only in the case where we @@ -304,4 +303,4 @@ void clearIBRs() { int getPendingIBRSize() { return pendingIBRs.size(); } -} \ No newline at end of file +}