You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Matthew Ouyang (Jira)" <ji...@apache.org> on 2021/07/07 15:39:00 UTC

[jira] [Updated] (BEAM-12532) BigQueryUtils fromBeamField omits ":00" from times with 0 seconds

     [ https://issues.apache.org/jira/browse/BEAM-12532?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Matthew Ouyang updated BEAM-12532:
----------------------------------
    Fix Version/s: 2.31.0

> BigQueryUtils fromBeamField omits ":00" from times with 0 seconds
> -----------------------------------------------------------------
>
>                 Key: BEAM-12532
>                 URL: https://issues.apache.org/jira/browse/BEAM-12532
>             Project: Beam
>          Issue Type: Bug
>          Components: io-java-gcp
>    Affects Versions: 2.30.0
>            Reporter: Matthew Ouyang
>            Assignee: Matthew Ouyang
>            Priority: P2
>             Fix For: 2.31.0
>
>          Time Spent: 3h
>  Remaining Estimate: 0h
>
> If a value in a Beam Row is of the SqlTypes.TIME data type, BigQueryUtils uses `toString()` to print out the time value [1].  `toString()` tries to optimize the string length by omitting nanoseconds if it is zero, and seconds if it is also zero [2].  However the BigQuery time type requires seconds to always be there even if it's zero [3].
> [1] https://github.com/apache/beam/blob/58e2ea9c40fd08e24f23183852970f566b17d6cd/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/BigQueryUtils.java#L551
> [2] https://docs.oracle.com/javase/8/docs/api/java/time/LocalTime.html#toString--
> [3] https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#time_type



--
This message was sent by Atlassian Jira
(v8.3.4#803005)