cloud-fan commented on a change in pull request #28646:
URL: https://github.com/apache/spark/pull/28646#discussion_r430531795
##########
File path:
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/DateTimeFormatterHelper.scala
##########
@@ -217,9 +217,15 @@ private object DateTimeFormatterHelper {
toFormatter(builder, TimestampFormatter.defaultLocale)
}
+ final val bugInStandAloneForm = {
+ val formatter = DateTimeFormatter.ofPattern("LLL", Locale.US)
Review comment:
This is a tradeoff we need to make. If we take locale into
consideration, then this can't be a static check. We may need to build a cache.
Since the default locale is US, and `LLL`/`qqq` is rarely used, the check
seems fine to me even if it can give false negative.
##########
File path:
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/DateTimeFormatterHelper.scala
##########
@@ -244,6 +250,12 @@ private object DateTimeFormatterHelper {
for (style <- unsupportedNarrowTextStyle if
patternPart.contains(style)) {
throw new IllegalArgumentException(s"Too many pattern letters:
${style.head}")
}
+ if (bugInStandAloneForm && (patternPart.contains("LLL") ||
patternPart.contains("qqq"))) {
+ throw new IllegalArgumentException("The current JDK has a bug to
support stand-alone " +
Review comment:
This is a bug in the time library of JDK, and is not related to JRE. I
think JDK is more precise.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]