viirya commented on a change in pull request #27617: [SPARK-30865][SQL] Refactor DateTimeUtils URL: https://github.com/apache/spark/pull/27617#discussion_r382953704
########## File path: sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/util/DateTimeUtils.scala ########## @@ -407,137 +397,141 @@ object DateTimeUtils { } } - private def localTimestamp(microsec: SQLTimestamp, zoneId: ZoneId): LocalDateTime = { - microsToInstant(microsec).atZone(zoneId).toLocalDateTime + private def getLocalDateTime(micros: Long, zoneId: ZoneId): LocalDateTime = { + microsToInstant(micros).atZone(zoneId).toLocalDateTime } /** * Returns the hour value of a given timestamp value. The timestamp is expressed in microseconds. */ - def getHours(microsec: SQLTimestamp, zoneId: ZoneId): Int = { - localTimestamp(microsec, zoneId).getHour + def getHours(micros: Long, zoneId: ZoneId): Int = { + getLocalDateTime(micros, zoneId).getHour } /** * Returns the minute value of a given timestamp value. The timestamp is expressed in - * microseconds. + * microseconds since the epoch. */ - def getMinutes(microsec: SQLTimestamp, zoneId: ZoneId): Int = { - localTimestamp(microsec, zoneId).getMinute + def getMinutes(micros: Long, zoneId: ZoneId): Int = { + getLocalDateTime(micros, zoneId).getMinute } /** * Returns the second value of a given timestamp value. The timestamp is expressed in - * microseconds. + * microseconds since the epoch. */ - def getSeconds(microsec: SQLTimestamp, zoneId: ZoneId): Int = { - localTimestamp(microsec, zoneId).getSecond + def getSeconds(micros: Long, zoneId: ZoneId): Int = { + getLocalDateTime(micros, zoneId).getSecond } /** * Returns the seconds part and its fractional part with microseconds. */ - def getSecondsWithFraction(microsec: SQLTimestamp, zoneId: ZoneId): Decimal = { - Decimal(getMicroseconds(microsec, zoneId), 8, 6) + def getSecondsWithFraction(micros: Long, zoneId: ZoneId): Decimal = { + Decimal(getMicroseconds(micros, zoneId), 8, 6) } /** - * Returns seconds, including fractional parts, multiplied by 1000. The timestamp - * is expressed in microseconds since the epoch. + * Returns local seconds, including fractional parts, multiplied by 1000. Review comment: Returns local milliseconds? ---------------------------------------------------------------- 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: us...@infra.apache.org With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org For additional commands, e-mail: reviews-h...@spark.apache.org