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)