[ 
https://issues.apache.org/jira/browse/ORC-346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16456827#comment-16456827
 ] 

ASF GitHub Bot commented on ORC-346:
------------------------------------

Github user omalley commented on the issue:

    https://github.com/apache/orc/pull/253
  
    *Sigh* This is caused by the fact that Java defined Timestamp badly and 
then Hive copied those semantics into the ColumnVector.
    
    We really need to fix these semantics in ORCv2.
    
    I'll also comment that it would probably be nicer to our users if we 
weren't modifying the data in the columnVector they passed into us, but clearly 
we are already doing that.


> Bug in TimestampColumnReader (or Writer)
> ----------------------------------------
>
>                 Key: ORC-346
>                 URL: https://issues.apache.org/jira/browse/ORC-346
>             Project: ORC
>          Issue Type: Bug
>          Components: C++
>            Reporter: rip.nsk
>            Priority: Blocker
>
> void TimestampColumnReader::next(ColumnVectorBatch& rowBatch, uint64_t 
> numValues, char *notNull)
> has the following code:
> c++\src\ColumnReader.cc:338
> int64_t writerTime = secsBuffer[i] + epochOffset;
>  secsBuffer[i] = writerTimezone.convertToUTC(writerTime);
>  {color:#f79232}if (secsBuffer[i] < 0 && nanoBuffer[i] != 0) {{color}
> {color:#f79232} secsBuffer[i] -= 1;{color}
> {color:#f79232} }{color}
> {color:#333333}which likely leads to read wrong seconds value for PRE_1970 
> dates{color}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to