-
Notifications
You must be signed in to change notification settings - Fork 287
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Kafka sink: Optimize DML with column type changes that don't change data #8095
Comments
/component sink |
In general, whenever DDL is applied to a table, we'd like for TiCDC to NOT re-send the existing rows from the table. Essentially, we want TiCDC to ignore DDL. |
Thanks for reporting this. This has been planned already and some predecessor tasks are done(pingcap/tidb#39159): with the |
Hi @keweishang , could you explain a little bit why you want to "ignore DDL"? If you are talking about the DDL statement itself, it might not be a good idea since the schema change will not be replicated. |
Hi @bb7133 we just don't want Kafka to received all the existing rows again. After the DDL is applied and new rows are inserted into the table, we want Kafka to received the new rows with the new schema. Also we're not really interested in the DDL event itself. Debezium sends the DDL event with the DDL statement to a separate Kafka topic, but we never really used it. |
|
/assign @hi-rustin |
Duplicate of: #8686 |
Is your feature request related to a problem?
Setup
TiUP Playground with TiCDC
Kafka
Changefeed
Consumer
Table
Tests
Result: No consumer output
Result:
Result: No consumer output
The problem here is that changing the column type from CHAR to VARCHAR results in all rows being updated in the sink, which for large tables can be problematic.
Describe the feature you'd like
Handle changes between
CHAR
andVARCHAR
the same as length changes for these columns without sending the full table to the sink.Related: pingcap/tidb#40574
Describe alternatives you've considered
No response
Teachability, Documentation, Adoption, Migration Strategy
No response
The text was updated successfully, but these errors were encountered: