Skip to content
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, parser, planner: admin Pause/Resume on DDL jobs (#43081) #43511

Conversation

ti-chi-bot
Copy link
Member

This is an automated cherry-pick of #43081

Add Pause/Resume admin command in parser and planner

What problem does this PR solve?

Issue Number: close #18015 #40041

Related issue number: #39751 #43061

Problem Summary:

What is changed and how it works?

  1. Add admin pause ddl jobs 3,5;
    a. the job should be in Running or Queueing state
    b. change the state to be Pausing on command issued, in another PR
    c. background work will pause the job once scheduled, in another PR

  2. Add admin resume ddl jobs 3,5;
    a. the job should be paused
    b. change the state to be Queueing on command issued, in another PR
    c. background worker will continue the job, no need to change

Check List

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No code

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Documentation

  • Affects user behaviors
  • Contains syntax changes
  • Contains variable changes
  • Contains experimental features
  • Changes MySQL compatibility

Release note

Please refer to Release Notes Language Style Guide to write a quality release note.

- Add two commands `admin pause ddl jobs 3,5;` and `admin resume ddl jobs 3,5;`
- Add two state of the job, Pausing and Paused
- The job in Running / Queueing could be transferred to be Pausing by `admin pause ddl jobs 3,5;`, then be Paused by background worker
- Only Paused job can be resumed to be Queueing by `admin pause ddl jobs 3,5;
- New error code added: ErrCannotPauseDDLJob  = 9014, ErrCannotResumeDDLJob = 9015, ErrPausedDDLJob       = 9016

Signed-off-by: ti-chi-bot <ti-community-prow-bot@tidb.io>
@ti-chi-bot
Copy link

ti-chi-bot bot commented May 4, 2023

[REVIEW NOTIFICATION]

This pull request has not been approved.

To complete the pull request process, please ask the reviewers in the list to review by filling /cc @reviewer in the comment.
After your PR has acquired the required number of LGTMs, you can assign this pull request to the committer in the list by filling /assign @committer in the comment to help you merge this pull request.

The full list of commands accepted by this bot can be found here.

Reviewer can indicate their review by submitting an approval review.
Reviewer can cancel approval by submitting a request changes review.

@ti-chi-bot ti-chi-bot added ok-to-test Indicates a PR is ready to be tested. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. labels May 4, 2023
@ti-chi-bot ti-chi-bot bot added release-note Denotes a PR that will be considered when it comes time to generate release notes. do-not-merge/cherry-pick-not-approved labels May 4, 2023
@ti-chi-bot ti-chi-bot added the type/cherry-pick-for-release-7.1 This PR is cherry-picked to release-7.1 from a source PR. label May 4, 2023
@ti-chi-bot
Copy link

ti-chi-bot bot commented May 4, 2023

@ti-chi-bot: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
idc-jenkins-ci-tidb/check_dev_2 bae73a1 link true /test check-dev2
idc-jenkins-ci-tidb/check_dev bae73a1 link true /test check-dev
idc-jenkins-ci-tidb/build bae73a1 link true /test build
idc-jenkins-ci-tidb/unit-test bae73a1 link true /test unit-test
idc-jenkins-ci-tidb/mysql-test bae73a1 link true /test mysql-test

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@VelocityLight VelocityLight added cherry-pick-approved Cherry pick PR approved by release team. and removed do-not-merge/cherry-pick-not-approved labels May 9, 2023
@dhysum
Copy link
Contributor

dhysum commented May 10, 2023

/retest-required

@dhysum
Copy link
Contributor

dhysum commented May 10, 2023

/ok-to-test

@dhysum
Copy link
Contributor

dhysum commented May 10, 2023

/cherry-pick-invite

@ti-chi-bot
Copy link
Member Author

@dhysum you're not a member of org pingcap

@Benjamin2037
Copy link
Collaborator

/cherry-pick-invite

@ti-chi-bot
Copy link
Member Author

@Benjamin2037 Please accept the invitation then you can push to the cherry-pick pull requests.
Comment with "/cherry-pick-invite" if the invitation is expired.
https://github.com/ti-chi-bot/tidb/invitations

@ti-chi-bot ti-chi-bot bot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 11, 2023
@ti-chi-bot
Copy link

ti-chi-bot bot commented May 11, 2023

PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@zimulala zimulala closed this May 11, 2023
@zimulala
Copy link
Contributor

Done it in #43674

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cherry-pick-approved Cherry pick PR approved by release team. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. ok-to-test Indicates a PR is ready to be tested. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. type/cherry-pick-for-release-7.1 This PR is cherry-picked to release-7.1 from a source PR.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants