Description
3-letter time zones are ambitious, and have been already deprecated in JDK, see https://docs.oracle.com/javase/8/docs/api/java/util/TimeZone.html . Also, some short names are mapped to region-based zone IDs, and don't conform to actual definitions. For example, the PST short name is mapped to America/Los_Angeles. It has different zone offsets in Java 7 and Java 8 APIs:
scala> TimeZone.getTimeZone("PST").getOffset(Timestamp.valueOf("2016-11-05 23:00:00").getTime)/3600000.0 res11: Double = -7.0 scala> TimeZone.getTimeZone("PST").getOffset(Timestamp.valueOf("2016-11-06 00:00:00").getTime)/3600000.0 res12: Double = -7.0 scala> TimeZone.getTimeZone("PST").getOffset(Timestamp.valueOf("2016-11-06 01:00:00").getTime)/3600000.0 res13: Double = -8.0 scala> TimeZone.getTimeZone("PST").getOffset(Timestamp.valueOf("2016-11-06 02:00:00").getTime)/3600000.0 res14: Double = -8.0 scala> TimeZone.getTimeZone("PST").getOffset(Timestamp.valueOf("2016-11-06 03:00:00").getTime)/3600000.0 res15: Double = -8.0
and in Java 8 API https://github.com/apache/spark/pull/27980#discussion_r396287278
By definition, PST must be a constant and equals to UTC-08:00, see https://www.timeanddate.com/time/zones/pst
The ticket aims to replace all short time zone names by zone offsets in tests.
Attachments
Issue Links
- links to