[
https://issues.apache.org/jira/browse/HIVE-10178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jason Dere updated HIVE-10178:
------------------------------
Attachment: HIVE-10178.03-branch-1.0.patch
Attaching patch for branch-1.0 based on patch v3, with the following changes:
- DateWritable.dateToDays() needs to be changed to use the millisToDays()
method that is fixed in the patch.
- Some test files in the patch do not yet exist in branch-1.0 (Hive on Spark,
TestGenericUDFLastDay)
qfile test output needs to be updated:
* vector_between_in.q.out looks different from master because branch-1.0 does
not have HIVE-3454
> DateWritable incorrectly calculates daysSinceEpoch for negative Unix time
> -------------------------------------------------------------------------
>
> Key: HIVE-10178
> URL: https://issues.apache.org/jira/browse/HIVE-10178
> Project: Hive
> Issue Type: Bug
> Components: Types
> Reporter: Alexander Pivovarov
> Assignee: Alexander Pivovarov
> Fix For: 1.2.0
>
> Attachments: HIVE-10178.01.patch, HIVE-10178.02.patch,
> HIVE-10178.03-branch-1.0.patch, HIVE-10178.03.patch
>
>
> For example:
> {code}
> select cast(cast('1966-01-01 00:00:01' as timestamp) as date);
> 1966-01-02
> {code}
> Another example:
> {code}
> select last_day(cast('1966-01-31 00:00:01' as timestamp));
> OK
> 1966-02-28
> {code}
> more details:
> Date: 1966-01-01 00:00:01
> unix time UTC: -126230399
> daysSinceEpoch=−126230399000 / 86400000 = -1460.999988
> int daysSinceEpoch = -1460
> DateWritable having daysSinceEpoch=-1460 is 1966-01-02
> daysSinceEpoch should be -1461 instead (1966-01-01)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)