[
https://issues.apache.org/jira/browse/BEAM-8741?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17548230#comment-17548230
]
Danny McCormick commented on BEAM-8741:
---------------------------------------
This issue has been migrated to https://github.com/apache/beam/issues/19875
> Queries that attempt to write to pubsub publish time should fail at
> construction time
> -------------------------------------------------------------------------------------
>
> Key: BEAM-8741
> URL: https://issues.apache.org/jira/browse/BEAM-8741
> Project: Beam
> Issue Type: Improvement
> Components: dsl-sql
> Reporter: Brian Hulette
> Priority: P3
>
> Currently it's possible to perform a query like:
> {code:sql}
> CREATE TABLE pubsub (
> event_timestamp TIMESTAMP,
> id VARCHAR
> ) ...
> INSERT INTO pubsub (event_timestamp, id) VALUES (...)
> {code}
> But when this is executed, the event_timestamp will be dropped, because on
> read it will be instead be populated with pubsub's publish time.
> A couple of ideas:
> - We could indicate that this is a VIRTUAL GENERATED column, and is therefore
> read-only. Calcite seems to have some support for this concept, see
> [ColumnStrategy.java|https://github.com/apache/calcite/blob/master/core/src/main/java/org/apache/calcite/schema/ColumnStrategy.java].
> - We could just throw an exception in the Pubsub JSON Table Provider if the
> query's output schema contains event_timestamp.
--
This message was sent by Atlassian Jira
(v8.20.7#820007)