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

MOBIN closed FLINK-37334.
-------------------------
    Resolution: Not A Bug

> Fix mysql's add column after event becomes add column last
> ----------------------------------------------------------
>
>                 Key: FLINK-37334
>                 URL: https://issues.apache.org/jira/browse/FLINK-37334
>             Project: Flink
>          Issue Type: Bug
>          Components: Flink CDC
>    Affects Versions: cdc-3.3.0
>            Reporter: MOBIN
>            Assignee: MOBIN
>            Priority: Major
>         Attachments: image-2025-02-20-11-01-02-254.png
>
>
> Repeat step:
> {code:java}
> 1. set schema.change.behavior:lenient 
> 2. ALTER TABLE cdc_sink19 add COLUMN a1_after1 bigint after a1  {code}
> log: [add column after event becomes add column last]
> 2025-02-17 14:49:22,184 INFO  
> org.apache.flink.cdc.runtime.operators.schema.regular.SchemaCoordinator [] - 
> Step 1 - Start deducing evolved schema change for 
> AddColumnEvent{tableId=dw_app.cdc_sink19, 
> addedColumns=[ColumnWithPosition{column=`a1_after1` BIGINT, 
> position={color:#ff0000}AFTER{color}, existedColumnName=a1}]}
> 2025-02-17 14:49:22,184 INFO  
> org.apache.flink.cdc.runtime.operators.schema.regular.SchemaCoordinator [] - 
> Step 2 - Affected downstream tables are: [rt_ods.cdc_sink19_add_column]
> 2025-02-17 14:49:22,185 INFO  
> org.apache.flink.cdc.runtime.operators.schema.regular.SchemaCoordinator [] - 
> Step 3.1 - For to-be-evolved table rt_ods.cdc_sink19_add_column with schema 
> columns=\{`id` DECIMAL(20, 0) NOT NULL '主键ID',`a1` VARCHAR(50),`a1_after` 
> BIGINT,`ab2` BIGINT,`table_name` STRING NOT NULL}, primaryKeys=id, 
> options=()...
> 2025-02-17 14:49:22,185 INFO  
> org.apache.flink.cdc.runtime.operators.schema.regular.SchemaCoordinator [] - 
> Step 3.2 - upstream dependency tables are: [dw_app.cdc_sink19]
> 2025-02-17 14:49:22,185 INFO  
> org.apache.flink.cdc.runtime.operators.schema.regular.SchemaCoordinator [] - 
> Step 3.3 - It's an one-by-one routing and could be forwarded as 
> AddColumnEvent{tableId=rt_ods.cdc_sink19_add_column, 
> addedColumns=[ColumnWithPosition{column=`a1_after1` BIGINT, 
> position={color:#ff0000}AFTER{color}, existedColumnName=a1}]}.
> 2025-02-17 14:49:22,185 INFO  
> org.apache.flink.cdc.runtime.operators.schema.regular.SchemaCoordinator [] - 
> Step 4 - After being normalized with LENIENT behavior, final schema change 
> events are: [AddColumnEvent{tableId=rt_ods.cdc_sink19_add_column, 
> addedColumns=[ColumnWithPosition{column=`a1_after1` BIGINT, 
> position={color:#ff0000}LAST{color}, existedColumnName=null}]}]
> 2025-02-17 14:49:22,185 INFO  
> org.apache.flink.cdc.runtime.operators.schema.regular.SchemaCoordinator [] - 
> All sink subtask have flushed for table dw_app.cdc_sink19. Start to apply 
> schema change request:
>         SchemaChangeRequest{tableId=dw_app.cdc_sink19, 
> schemaChangeEvent=AddColumnEvent{tableId=dw_app.cdc_sink19, 
> addedColumns=[ColumnWithPosition
> {column=`a1_after1` BIGINT, position=AFTER, existedColumnName=a1}
> ]}, subTaskId=0}
> that extracts to:
>         AddColumnEvent{tableId=rt_ods.cdc_sink19_add_column, 
> addedColumns=[ColumnWithPosition{column=`a1_after1` BIGINT, 
> position={color:#ff0000}LAST{color}, existedColumnName=null}]}
> 2025-02-17 14:49:22,307 INFO  
> org.apache.flink.cdc.runtime.operators.schema.regular.SchemaCoordinator [] - 
> Successfully applied schema change event 
> AddColumnEvent{tableId=rt_ods.cdc_sink19_add_column, 
> addedColumns=[ColumnWithPosition{column=`a1_after1` BIGINT, 
> position={color:#ff0000}LAST{color}, existedColumnName=null}]} to external 
> system.
> !image-2025-02-20-11-01-02-254.png|width=1225,height=352!



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

Reply via email to