Timo Theusner created FLINK-41214:
-------------------------------------

             Summary: Declare a materialized table with Table#materializeInto
                 Key: FLINK-41214
                 URL: https://issues.apache.org/jira/browse/FLINK-41214
             Project: Flink
          Issue Type: Sub-task
          Components: Table SQL / Planner, Table SQL / API
            Reporter: Timo Theusner


Add {{materializeInto(path)}} and {{{}materializeInto(path, freshness){}}}, 
returning a {{MaterializedPipeline}} whose {{execute()}} applies {{CREATE OR 
ALTER MATERIALIZED TABLE}} semantics and returns a {{MaterializedTable}} handle.

Proposed Changes
 * Move the create/alter/convert decision, schema merging and {{TableChange}} 
derivation from {{SqlCreateOrAlterMaterializedTableConverter}} into 
{{flink-table-api-java}}
 * Add {{{}Table#materializeInto(String){}}}, {{{}Table#materializeInto(String, 
Duration){}}}, {{@PublicEvolving}} {{MaterializedPipeline}} with 
{{getIdentifier()}} and {{{}execute(){}}}, and {{@PublicEvolving}} 
{{MaterializedTable}} with {{getIdentifier()}} as the handle {{execute()}} 
returns
 * Build the create or full-alter operation in {{MaterializedPipelineImpl}}
 * Reject inline function instances, temporary functions, tables and views, 
{{{}fromDataStream{}}}/{{{}fromChangelogStream{}}}/{{{}from(TableDescriptor){}}}
 and operations without SQL serialization, e.g. session group windows, with a 
{{ValidationException}} before any catalog write



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to