Uploaded image for project: 'Spark'
  1. Spark
  2. SPARK-31237

Replace 3-letter time zones by zone offsets

    XMLWordPrintableJSON

Details

    • Test
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 3.0.0
    • 3.0.0
    • SQL
    • None

    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

          Activity

            People

              maxgekk Max Gekk
              maxgekk Max Gekk
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: