-
Notifications
You must be signed in to change notification settings - Fork 293
ddl(ticdc): process only JobStateDone
DDL jobs and remove the need to capture the tidb_ddl_history
#11836
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
ddl(ticdc): process only JobStateDone
DDL jobs and remove the need to capture the tidb_ddl_history
#11836
Conversation
…tory instead of tidb_ddl_job table (pingcap#10907)" This reverts commit 8d6a9e1.
JobStateDone
DDL jobs and remove the need to monitor the tidb_ddl_history
JobStateDone
DDL jobs and remove the need to capture the tidb_ddl_history
/test cdc-integration-storage-test |
/test cdc-integration-mysql-test |
/test dm-integration-test |
/retest |
295de41
to
55bca14
Compare
/retest |
/test cdc-integration-kafka-test |
/test dm-integration-test |
1 similar comment
/test dm-integration-test |
/test cdc-integration-kafka-test |
/retest |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: CharlesCheung96, hongyunyan The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
[LGTM Timeline notifier]Timeline:
|
/test verify |
/retest |
1 similar comment
/retest |
In response to a cherrypick label: new pull request created to branch |
What problem does this PR solve?
Issue Number: close #11816
What is changed and how it works?
PR Description
This PR updates TiCDC to align its DDL handling logic with TiDB v8.3.0’s changes to the
enable_fast_create_table
feature, improving efficiency and simplifying the architecture.Background
In TiDB versions prior to v8.3.0:
enable_fast_create_table=on
,batch create tables
DDL jobs transitioned directly to theJobStateSynced
state, bypassing the JobStateDone state.Batch create tables
DDL jobs were written only to thetidb_ddl_history
table in theJobStateSynced
state.As of TiDB v8.3.0:
Batch create tables
DDL jobs now follow the same lifecycle as other DDL jobs, including theJobStateDone
state.tidb_ddl_job
table, making thetidb_ddl_history
table unnecessary for TiCDC.For more details, see issue #11816.
Changes in This PR
1. Process Only
JobStateDone
DDL JobsJobStateDone
DDL jobs forcreate table
operations.JobStateSynced
state, simplifying the DDL processing logic.2. Stop Monitoring
tidb_ddl_history
tidb_ddl_history
table for DDL changes.enable_fast_create_table
architecture.3. Resolve Redundant DDL Processing
create table
DDL job was processed twice in bothJobStateDone
andJobStateSynced
states.4. Reduce Latency
JobStateDone
DDL jobs directly, this change avoids delays introduced by waiting for theJobStateSynced
state transition.Check List
Tests
Questions
Will it cause performance regression or break compatibility?
No.
Do you need to update user documentation, design documentation or monitoring documentation?
No.
Release note