-
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
ddl(ticdc): async exec add index ddl #9701
Conversation
zap.Uint64("commitTs", ddl.CommitTs)) | ||
done <- nil | ||
}() | ||
for { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The DDL is executing in another goroutine, and this for
loop looks useless, since the ticker will be triggered 1s later, so the method return, and the error channel done
is not correctly checked.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
fixed
}() | ||
for { | ||
select { | ||
case <-ctx.Done(): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What happens if the ctx.Done
triggered ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
tasks are canceled
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: 3AceShowHand, asddongmen 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 cdc-integration-mysql-test |
/test dm-integration-test |
2 similar comments
/test dm-integration-test |
/test dm-integration-test |
/cherry-pick release-7.1 |
In response to a cherrypick label: new pull request created to branch |
In response to a cherrypick label: new pull request created to branch |
Signed-off-by: ti-chi-bot <[email protected]>
What problem does this PR solve?
Issue Number: close #9644
What is changed and how it works?
After this pull request, the "add index" DDL will be executed asynchronously, and it will no longer block the progression of DML replication. There is a risk associated with executing the "add index" DDL in this manner: If an error occurs during the execution of the "add index" DDL in downstream TiDB, the DDL may be lost. However, the likelihood of this situation occurring is low since the DDL was executed successfully upstream, and it will not impact the data correctness downstream.
Check List
Tests
Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note