Ramin Gharib created FLINK-39303:
------------------------------------

             Summary: Implement START_MODE clause for Materialized Table 
Evolution
                 Key: FLINK-39303
                 URL: https://issues.apache.org/jira/browse/FLINK-39303
             Project: Flink
          Issue Type: Sub-task
          Components: Table SQL / Planner
            Reporter: Ramin Gharib


Add parser and planner support for the new {{START_MODE}} clause in {{CREATE 
[OR ALTER] MATERIALIZED TABLE}} statements. This clause controls the data 
processing window during table evolution.



The implementation must support the following syntax and behaviors:
 * {*}{{FROM_BEGINNING}}{*}: Reprocesses all available data from the source 
history. *This must be the default* if the clause is omitted, ensuring backward 
compatibility with existing {{ALTER}} command behavior.

 * {*}{{FROM_NOW[(interval)]}}{*}:

 ** Without argument: Starts consuming from the latest record.

 ** With standard SQL interval (e.g., {{{}INTERVAL '7' DAY{}}}): Starts 
processing from a calculated point in the past.

 * {*}{{FROM_TIMESTAMP(<timestamp_literal>)}}{*}: Starts processing from a 
specified absolute instant in time.

 * *{{RESUME_OR_*}} variants* (Special idempotent cases for {{{}CREATE OR 
ALTER{}}}):

 ** *{{RESUME_OR_FROM_BEGINNING}}*

 ** *{{RESUME_OR_FROM_NOW[(interval)]}}*

 ** *{{RESUME_OR_FROM_TIMESTAMP(<timestamp_literal>)}}*

 ** _Behavior:_ Attempts to resume from the exact source offsets of the 
previous job instance. If resume information is unavailable, it falls back to 
the specified suffix logic ({{{}FROM_BEGINNING{}}}, {{{}FROM_NOW{}}}, or 
{{{}FROM_TIMESTAMP{}}}).



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

Reply via email to