Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-8102

Partitions of type 'date' behave incorrectly with daylight saving time.

    XMLWordPrintableJSON

Details

    Description

      On 2AM on March 28th 2014, Israel went from standard time (GMT+2) to daylight saving time (GMT+3).
      The server's timezone is Asia/Jerusalem. When creating a partition whose key is 2014-03-28, Hive creates a partition for 2013-03-27 instead:

      hive (default)> create table test (a int) partitioned by (`b_prt` date);
      OK
      Time taken: 0.092 seconds
      hive (default)> alter table test add partition (b_prt='2014-03-28');
      OK
      Time taken: 0.187 seconds
      hive (default)> show partitions test;
      OK
      partition
      b_prt=2014-03-27
      Time taken: 0.134 seconds, Fetched: 1 row(s)

      It seems that the root cause is the behavior of DateWritable.daysToMillis/dateToDays.

      Attachments

        1. HIVE-8102.3.patch
          4 kB
          Jason Dere
        2. HIVE-8102.2.patch
          4 kB
          Jason Dere
        3. HIVE-8102.1.patch
          3 kB
          Jason Dere

        Activity

          People

            jdere Jason Dere
            eliac Eli Acherkan
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: