soumyajit-sahu opened a new pull request, #15839:
URL: https://github.com/apache/iceberg/pull/15839
ensureTimestampFormat normalizes colon-separated offsets (+00:00 → +0000) so
that the internal OFFSET_TIMESTAMP_FORMAT formatter (which uses
appendOffset("+HHmm", "Z")) can parse them. However, it assumed the timezone
sign is always at character index 19 — which is only true when there are no
fractional seconds.
When the normalization was skipped, OFFSET_TIMESTAMP_FORMAT failed to parse
the string (colon still present). The fallback LocalDateTime.parse with
ISO_LOCAL_DATE_TIME then also failed because the +00:00 suffix was still
attached. The combined failure produced a connector task crash.
This change replaces the hardcoded index-19 check with a forward scan
starting at index 19, dynamically locating the timezone sign regardless of how
many fractional-second digits precede it. The colon is then stripped at the
correct position.
Closes #15838
--
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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]