-
Notifications
You must be signed in to change notification settings - Fork 26
*: Improve cdc server exit logic #926
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
Conversation
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Skipping CI for Draft Pull Request. |
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
Signed-off-by: dongmen <[email protected]>
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: 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:
|
Signed-off-by: dongmen [email protected]
What problem does this PR solve?
Issue Number: ref #442
What is changed and how it works?
This pull request makes the server exit directly when it encounters the
CDC:ErrCaptureSuicide
error, which indicates a fatal error has occurred. We believe that rather than resetting all components internally and restarting the server in a loop (which involves resetting some states and is quite complex), it is more appropriate to simply exit and let external operational tools like the operator or TiUP restart the CDC process.It also improves the server closing process by ensuring all components are closed before the server exits. To achieve this, it copies some packages from the tiflow repository into this repository and makes some modifications.
Fix the integration test case
capture_session_done_during_task
, which is a byproduct of the improvements in step 1.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