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]
