From fe5e0c1772fc5392288a606e81b6f1dffe73cb90 Mon Sep 17 00:00:00 2001 From: sunxia Date: Wed, 4 Jan 2023 14:58:35 +0800 Subject: [PATCH] [FLINK-30558][runtime] use different metric object to avoid metric 'numRestarts' being overridden by 'fullRestarts' in SchedulerBase This closes #21598. --- .../org/apache/flink/runtime/scheduler/SchedulerBase.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/flink-runtime/src/main/java/org/apache/flink/runtime/scheduler/SchedulerBase.java b/flink-runtime/src/main/java/org/apache/flink/runtime/scheduler/SchedulerBase.java index c822dc92c8168..bf7625f23bef0 100644 --- a/flink-runtime/src/main/java/org/apache/flink/runtime/scheduler/SchedulerBase.java +++ b/flink-runtime/src/main/java/org/apache/flink/runtime/scheduler/SchedulerBase.java @@ -616,8 +616,8 @@ public static void registerJobMetrics( MetricOptions.JobStatusMetricsSettings jobStatusMetricsSettings) { metrics.gauge(DownTimeGauge.METRIC_NAME, new DownTimeGauge(jobStatusProvider)); metrics.gauge(UpTimeGauge.METRIC_NAME, new UpTimeGauge(jobStatusProvider)); - metrics.gauge(MetricNames.NUM_RESTARTS, numberOfRestarts); - metrics.gauge(MetricNames.FULL_RESTARTS, numberOfRestarts); + metrics.gauge(MetricNames.NUM_RESTARTS, numberOfRestarts::getValue); + metrics.gauge(MetricNames.FULL_RESTARTS, numberOfRestarts::getValue); final JobStatusMetrics jobStatusMetrics = new JobStatusMetrics(initializationTimestamp, jobStatusMetricsSettings);