ffacs opened a new pull request, #2716:
URL: https://github.com/apache/orc/pull/2716

   ### What changes were proposed in this pull request?
   
     Add support for Java fixed-offset timezone IDs (GMT±HH:MM and 
GMT±HH:MM:SS) in the C++ timezone resolver, using cached fixed-offset timezones 
without requiring TZDB files.
   
     ### Why are the changes needed?
   
     The Java writer can record IDs such as GMT-00:00 or GMT+05:30 in the 
stripe’s writerTimezone. The C++ reader treats these IDs as timezone database 
filenames and fails when reading
     timestamp columns because the corresponding files do not exist.
   
     This change allows the C++ reader to resolve these offsets and read the 
timestamps correctly.
   
     Fixes ORC-2222 and #2715.
   
     ### How was this patch tested?
   
     Added tests covering:
   
     • Positive and negative offsets, signed zero, minute and second precision, 
and invalid formats.
     • Epoch calculation, time conversion, caching, and operation without TZDB 
files.
     • Reading Java-written ORC files with four fixed-offset timezones, 
including pre-1970 timestamps and nanosecond precision.
   
     Rebuilt C++ and ran make -C build test-out: all 763 core tests and 87 tool 
tests passed. Also verified that the original file attached to #2715 reads 
successfully.
   
     ### Was this patch authored or co-authored using generative AI tooling?
   
     Generated-by: OpenAI Codex (GPT-6)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to