Alexander Pivovarov created HIVE-10178:
------------------------------------------
Summary: 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
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)