Github user xndai commented on the issue: https://github.com/apache/orc/pull/233 IMO the ideal approach of achieving the timestamp semantics is to have the caller pass in session timezone, and the reader return timestamp batch based on that. That would be similar to what we do with Java reader today except that Java reader assumes current thread timezone as session timezone, which in some case can be wrong. The other option is we return timestamp in a fixed timezone (such as GMT as C++ reader does today) and the behavior needs to be documented as part of the interface. The caller can always convert it to session timezone accordingly. But currently the Java and C++ reader behaves differently which can be misleading.
---