Jonathancui123 commented on code in PR #36871:
URL: https://github.com/apache/spark/pull/36871#discussion_r918142012
##########
sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/csv/CSVInferSchema.scala:
##########
@@ -117,7 +123,10 @@ class CSVInferSchema(val options: CSVOptions) extends
Serializable {
case LongType => tryParseLong(field)
case _: DecimalType => tryParseDecimal(field)
case DoubleType => tryParseDouble(field)
+ case DateType => tryParseDateTime(field)
+ case TimestampNTZType if options.inferDate => tryParseDateTime(field)
Review Comment:
Our expected behavior is that in a column with `TimestampType` entries and
then `DateType` entries, the column will be inferred as `TimestampType`.
Here, `tryParseTimestampNTZ` and `tryParseTimestamp` will not be able to
parse the `DateType` entries that show up later in the column and the column
will be promoted to string type. So we must use `tryParseDateTime` which will
give a chance for the date to be parsed.
--
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]