You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Kenneth Knowles (Jira)" <ji...@apache.org> on 2022/01/27 18:41:00 UTC

[jira] [Updated] (BEAM-13753) BigQuery Storage Write API fails with type mismatch error for DATE type

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

Kenneth Knowles updated BEAM-13753:
-----------------------------------
    Status: Open  (was: Triage Needed)

> BigQuery Storage Write API fails with type mismatch error for DATE type
> -----------------------------------------------------------------------
>
>                 Key: BEAM-13753
>                 URL: https://issues.apache.org/jira/browse/BEAM-13753
>             Project: Beam
>          Issue Type: Bug
>          Components: io-java-gcp
>            Reporter: Minbo Bae
>            Priority: P2
>
> If {{DATE}} type is specified in schema, {{BigQueryIO}} with Storage Write API may fail with the following error:
> {quote}Got error com.google.api.gax.rpc.InvalidArgumentException: io.grpc.StatusRuntimeException: INVALID_ARGUMENT: The proto field mismatched with BigQuery field at <table>, the proto field type string, BigQuery field type DATE Entity: <write_stream_name>
> ...
> {quote}
> {{DATE}} type in BEAM for BigQuery is converted to {{string}} in proto request [1], while BigQuery Storage Write API requires an integer type for {{DATE}} type in BigQuery [2].
> A workaround is to use {{INTEGER}} in BEAM and manually compute the number of days since epoch.
> Actually, a feature request to BigQuery is filed at [3]. If it's implemented, we can use {{DATE}} type successfully.
> [1] [https://github.com/apache/beam/blob/v2.35.0/sdks/java/io/google-cloud-platform/src/main/java/org/apache/beam/sdk/io/gcp/bigquery/TableRowToStorageApiProto.java#L55-L73]
> [2] [https://cloud.google.com/bigquery/docs/write-api#data_type_conversions]
> [3] [https://issuetracker.google.com/issues/205174128]



--
This message was sent by Atlassian Jira
(v8.20.1#820001)