Rui Wang created BEAM-8073:
------------------------------

             Summary: CAST Timestamp -> String doesn't properly handle 
timezones with sub-minute offsets 
                 Key: BEAM-8073
                 URL: https://issues.apache.org/jira/browse/BEAM-8073
             Project: Beam
          Issue Type: Sub-task
          Components: dsl-sql-zetasql
            Reporter: Rui Wang


One of the timestamp -> string test cases is -62135596800000000 microseconds 
from the unix epoch, or 01/01/0001 00:00:00 GMT

Technically the timezone offset at this time in America/Los_Angeles is 
-07:52:58. This causes the following error:

Expected: ARRAY<STRUCT<ColA STRING>>[{"0000-12-31 16:08:00-07:52"}]
  Actual: ARRAY<STRUCT<ColA STRING>>[{"0000-12-31 16:07:02-07:52"}]

Note that ZetaSQL expects us to completely truncate the second part of the 
offset. It's not used when subtracting from the origin datetime, and it's not 
included in the offset string. However when we perform this conversion, joda 
time uses the second part of the offset, and thus our time string is off by 58 
seconds.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to