Hisoka-X commented on code in PR #43243:
URL: https://github.com/apache/spark/pull/43243#discussion_r1454478275
##########
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/csv/CSVInferSchema.scala:
##########
@@ -202,8 +202,11 @@ class CSVInferSchema(val options: CSVOptions) extends
Serializable {
// We can only parse the value as TimestampNTZType if it does not have
zone-offset or
// time-zone component and can be parsed with the timestamp formatter.
// Otherwise, it is likely to be a timestamp with timezone.
- if (timestampNTZFormatter.parseWithoutTimeZoneOptional(field,
false).isDefined) {
- SQLConf.get.timestampType
+ val timestampType = SQLConf.get.timestampType
+ if ((SQLConf.get.legacyTimeParserPolicy == LegacyBehaviorPolicy.LEGACY ||
+ timestampType == TimestampNTZType) &&
+ timestampNTZFormatter.parseWithoutTimeZoneOptional(field,
false).isDefined) {
Review Comment:
I did some test use old version which before this PR merged. When
`SQLConf.get.timestampType == TIMESTAMP_LTZ`, it used `timestampNTZFormatter`
to parsed timestamp and passed. You can use
`CSVLegacyTimeParserSuite.SPARK-37326: Timestamp type inference for a column
with TIMESTAMP_NTZ values` to reproduce this behavior.

--
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.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]