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

Ramin Gharib updated FLINK-39664:
---------------------------------
    Component/s: Table SQL / Planner

> Support ALTER MATERIALIZED TABLE ... SET FRESHNESS = ... conversion
> -------------------------------------------------------------------
>
>                 Key: FLINK-39664
>                 URL: https://issues.apache.org/jira/browse/FLINK-39664
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Table SQL / Planner
>            Reporter: Ramin Gharib
>            Priority: Major
>
> Add {{{}SqlAlterMaterializedTableFreshnessConverter{}}}. Register it in 
> {{{}SqlNodeConverters#registerMaterializedTableConverters{}}}.
> *Behavior:*
>  # Resolve the table.
>  # Validate the new freshness interval using the same rules 
> {{SqlCreateOrAlterMaterializedTableConverter}} applies on the create path.
>  # Update the {{CatalogMaterializedTable}} freshness field and emit 
> {{{}AlterMaterializedTableChangeOperation{}}}.
>  # Consider whether the change requires the underlying refresh job to be 
> restarted. If yes, document the requirement in the operation's summary and 
> follow the same pattern used for {{AS QUERY}} changes.
> *Tests:*
>  * Valid freshness.
>  * Invalid freshness types caught by {{IntervalLiteralOrError}} in the parser 
> are already rejected; add a converter-level test that rejects negative or 
> zero intervals.
>  * IT case that changes freshness and asserts the catalog reflects it.
> *Note:* FLIP-551 (FLINK-38532) makes freshness optional. The converter must 
> accept the optional case and handle the transition from no-freshness to 
> set-freshness as well as the reverse if grammar allows it.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to