TheR1sing3un opened a new pull request, #10365:
URL: https://github.com/apache/paimon/pull/10365

   ### Purpose
   
   LTZ global-index keys currently subtract an epoch carrying the input's own 
timezone. Consequently, `2026-01-01 08:00+08:00` and `2026-01-01 00:00Z` 
produce different keys despite representing the same instant, causing 
BTree/bitmap lookups to miss rows.
   
   Distinguish LTZ types in the serializer factory and normalize aware LTZ 
inputs to UTC before computing epoch milliseconds/nanoseconds. Support both 
TIMESTAMP_LTZ and TIMESTAMP WITH LOCAL TIME ZONE spellings; retain ordinary 
TIMESTAMP wall-time semantics and treat naive LTZ inputs/deserialized keys as 
UTC.
   
   The file format and existing UTC/naive key bytes are unchanged. This fixes 
offset-bearing query literals against existing UTC indexes. Indexes previously 
built directly from non-UTC aware values with incorrect epoch bytes require 
rebuilding; the original offset is not present in those bytes.
   
   ### Tests
   
   - Seven new tests cover both LTZ spellings at millisecond/microsecond 
precision, positive/negative offsets, pre-epoch values, instant ordering, 
ordinary TIMESTAMP behavior, and persisted BTree/bitmap equality, IN and range 
queries. Six fail against the unchanged base.
   - New tests plus `global_index_build_test.py` and 
`global_index_scalar_search_mode_test.py`: 51 passed.
   - Flake8 for changed files and `git diff --check` pass.
   


-- 
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