Skip to content

Commit cce6306

Browse files
HADOOP-19311 [branch-3.4]: [ABFS] Implement Backoff and Read Footer metrics using IOStatistics Class (#7394)
Contributed by: Manish Bhatt <bhattmanish98> Reviewed by: Saikat roy <saikatroy038> and Anuj Modi <anujmodi@apache.org>
1 parent 461276a commit cce6306

19 files changed

+1751
-883
lines changed

hadoop-tools/hadoop-azure/src/main/java/org/apache/hadoop/fs/azurebfs/AbfsBackoffMetrics.java

Lines changed: 0 additions & 312 deletions
This file was deleted.

hadoop-tools/hadoop-azure/src/main/java/org/apache/hadoop/fs/azurebfs/AbfsCountersImpl.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import java.util.concurrent.atomic.AtomicLong;
2525

2626
import org.apache.hadoop.classification.VisibleForTesting;
27+
import org.apache.hadoop.fs.azurebfs.services.AbfsBackoffMetrics;
2728
import org.apache.hadoop.fs.azurebfs.services.AbfsCounters;
2829
import org.apache.hadoop.fs.azurebfs.services.AbfsReadFooterMetrics;
2930
import org.apache.hadoop.fs.azurebfs.utils.MetricFormat;
@@ -69,6 +70,7 @@
6970
import static org.apache.hadoop.fs.azurebfs.AbfsStatistic.SEND_REQUESTS;
7071
import static org.apache.hadoop.fs.azurebfs.AbfsStatistic.SERVER_UNAVAILABLE;
7172
import static org.apache.hadoop.fs.azurebfs.AbfsStatistic.WRITE_THROTTLES;
73+
import static org.apache.hadoop.fs.azurebfs.enums.AbfsBackoffMetricsEnum.TOTAL_NUMBER_OF_REQUESTS;
7274
import static org.apache.hadoop.fs.statistics.impl.IOStatisticsBinding.iostatisticsStore;
7375
import static org.apache.hadoop.util.Time.now;
7476

@@ -324,18 +326,14 @@ public DurationTracker trackDuration(String key) {
324326
public String toString() {
325327
String metric = "";
326328
if (abfsBackoffMetrics != null) {
327-
long totalNoRequests = getAbfsBackoffMetrics().getTotalNumberOfRequests();
329+
long totalNoRequests = getAbfsBackoffMetrics().getMetricValue(TOTAL_NUMBER_OF_REQUESTS);
328330
if (totalNoRequests > 0) {
329331
metric += "#BO:" + getAbfsBackoffMetrics().toString();
330332
}
331333
}
332334
if (abfsReadFooterMetrics != null) {
333-
Map<String, AbfsReadFooterMetrics> metricsMap = getAbfsReadFooterMetrics().getMetricsMap();
334-
if (metricsMap != null && !(metricsMap.isEmpty())) {
335-
String readFooterMetric = getAbfsReadFooterMetrics().toString();
336-
if (!readFooterMetric.equals("")) {
337-
metric += "#FO:" + getAbfsReadFooterMetrics().toString();
338-
}
335+
if (getAbfsReadFooterMetrics().getTotalFiles() > 0) {
336+
metric += "#FO:" + getAbfsReadFooterMetrics().toString();
339337
}
340338
}
341339
return metric;

0 commit comments

Comments
 (0)