From 5e050ea85eec9e662e5b7b49f483f3de32913931 Mon Sep 17 00:00:00 2001 From: Max Gekk Date: Sat, 30 May 2020 13:38:02 +0300 Subject: [PATCH] Use FAST_DATE_FORMAT as legacy frac formatter --- .../spark/sql/catalyst/util/TimestampFormatter.scala | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/TimestampFormatter.scala b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/TimestampFormatter.scala index 8428964d45707..3e302e2170390 100644 --- a/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/TimestampFormatter.scala +++ b/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/TimestampFormatter.scala @@ -121,6 +121,7 @@ class FractionTimestampFormatter(zoneId: ZoneId) TimestampFormatter.defaultPattern, zoneId, TimestampFormatter.defaultLocale, + LegacyDateFormats.FAST_DATE_FORMAT, needVarLengthSecondFraction = false) { @transient @@ -224,7 +225,11 @@ class LegacyFastTimestampFormatter( } override def format(ts: Timestamp): String = { - format(fromJavaTimestamp(ts)) + if (ts.getNanos == 0) { + fastDateFormat.format(ts) + } else { + format(fromJavaTimestamp(ts)) + } } override def format(instant: Instant): String = {