diff --git a/lib/trino-plugin-toolkit/src/main/java/io/trino/plugin/base/metrics/DurationTiming.java b/lib/trino-plugin-toolkit/src/main/java/io/trino/plugin/base/metrics/DurationTiming.java index 9328122e59a2..04627b241bce 100644 --- a/lib/trino-plugin-toolkit/src/main/java/io/trino/plugin/base/metrics/DurationTiming.java +++ b/lib/trino-plugin-toolkit/src/main/java/io/trino/plugin/base/metrics/DurationTiming.java @@ -54,7 +54,7 @@ public DurationTiming mergeWith(DurationTiming other) { long durationNanos = duration.roundTo(NANOSECONDS); long otherDurationNanos = other.getAirliftDuration().roundTo(NANOSECONDS); - return new DurationTiming(new Duration(durationNanos + otherDurationNanos, NANOSECONDS).convertToMostSuccinctTimeUnit()); + return new DurationTiming(new Duration(durationNanos + otherDurationNanos, NANOSECONDS)); } @Override @@ -80,7 +80,7 @@ public int hashCode() public String toString() { return toStringHelper("") - .add("duration", duration) + .add("duration", duration.convertToMostSuccinctTimeUnit()) .toString(); } } diff --git a/lib/trino-plugin-toolkit/src/test/java/io/trino/plugin/base/metrics/TestMetrics.java b/lib/trino-plugin-toolkit/src/test/java/io/trino/plugin/base/metrics/TestMetrics.java index 4c4c8a5b76ce..965002db8c74 100644 --- a/lib/trino-plugin-toolkit/src/test/java/io/trino/plugin/base/metrics/TestMetrics.java +++ b/lib/trino-plugin-toolkit/src/test/java/io/trino/plugin/base/metrics/TestMetrics.java @@ -70,16 +70,19 @@ public void testMergeHistogram() @Test public void testDurationTiming() { - DurationTiming d1 = new DurationTiming(new Duration(123, NANOSECONDS)); + DurationTiming d1 = new DurationTiming(new Duration(1234, NANOSECONDS)); DurationTiming d2 = new DurationTiming(new Duration(1, NANOSECONDS)); + assertThat(d1.toString()).matches("\\{duration=1.23us\\}"); + Metrics m1 = new Metrics(ImmutableMap.of("a", d1)); Metrics m2 = new Metrics(ImmutableMap.of("a", d2)); DurationTiming merged = (DurationTiming) merge(m1, m2).getMetrics().get("a"); - assertThat(merged.getAirliftDuration().roundTo(NANOSECONDS)).isEqualTo(124); - assertThat(merged.getDuration().toNanos()).isEqualTo(124); + assertThat(merged.getAirliftDuration().roundTo(NANOSECONDS)).isEqualTo(1235); + assertThat(merged.getDuration().toNanos()).isEqualTo(1235); + assertThat(merged.toString()).matches("\\{duration=1.24us\\}"); } @Test