utc_from_timestamp and utc_to_timestamp returns incorrect results.
--
Key: HIVE-2803
URL: https://issues.apache.org/jira/browse/HIVE-2803
Project: Hive
Issue Type: Bug
Components: UDF
Affects Versions: 0.8.0
Reporter: tamtam180
How to reproduce:
{noformat}
$ echo 2011-12-25 09:00:00.123456 /tmp/data5.txt
hive create table ts1(t1 timestamp);
hive load data local inpath '/tmp/data5.txt' overwrite into table ts1;
hive select t1, from_utc_timestamp(t1, 'JST'), from_utc_timestamp(t1, 'JST')
from ts1 limit 1;
{noformat}
The following result is expected:
{noformat}
2011-12-25 09:00:00.123456 2011-12-25 18:00:00.123456 2011-12-25
18:00:00.123456
{noformat}
However, the above query return incorrect result like this:
{noformat}
2011-12-26 03:00:00.492456 2011-12-26 03:00:00.492456 2011-12-26
03:00:00.492456
{noformat}
This is because GenericUDFFromUtcTimestamp.applyOffset() does setTime()
improperly.
On evaluating query, timestamp argument always returns the same instance.
GenericUDFFromUtcTimestamp.applyOffset() does setTime() on the instance.
That means it adds all offsets in the query.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira