hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Gopal V (JIRA)" <j...@apache.org>
Subject [jira] [Created] (HIVE-4884) ORC TimestampTreeReader.nextVector() off by a second when time in fractional
Date Thu, 18 Jul 2013 20:24:48 GMT
Gopal V created HIVE-4884:
-----------------------------

             Summary: ORC TimestampTreeReader.nextVector() off by a second when time in fractional
                 Key: HIVE-4884
                 URL: https://issues.apache.org/jira/browse/HIVE-4884
             Project: Hive
          Issue Type: Sub-task
          Components: File Formats
    Affects Versions: vectorization-branch
            Reporter: Gopal V
            Assignee: Gopal V
             Fix For: vectorization-branch


When using negative timestamps, the ORC vectorized Timestampreader does the following

{code}
result.vector[i] = (result.vector[i] * 1000000) + nanoVector.vector[i];
{code}

This suffers from inaccuracies because the nanoseconds are always positive and the result.vector[i]
is in effect 

{code}
seconds = (getTime() / 1000)
nanos = (getNanos())
// so -42001 ms is written as
// seconds = -42
// nanos = 999000000
// (-42001 / 1000) * 1000 == -42000
// + 999 ms (from nanos)
// which is -42999 ms
{code}

This needs to be adjusted down if nanos has been zero adjusted, to result in -42001 as the
vector[i] value.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message