ddl: Do not succee the last_gc_safepoint when physically dropping table is skipped#8910
Conversation
|
/run-all-tests |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: JinheLin, Lloyd-Pottiger The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
[LGTM Timeline notifier]Timeline:
|
|
@JaySon-Huang: Your PR was out of date, I have automatically updated it for you. At the same time I will also trigger all tests for you: /run-all-tests
If the CI test fails, you just re-trigger the test that failed and the bot will merge the PR for you after the CI passes. DetailsInstructions 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 ti-community-infra/tichi repository. |
|
In response to a cherrypick label: new pull request created to branch |
|
In response to a cherrypick label: new pull request could not be created: failed to create pull request against pingcap/tiflash#release-8.1 from head ti-chi-bot:cherry-pick-8910-to-release-8.1: status code 422 not one of [201], body: {"message":"Validation Failed","errors":[{"resource":"PullRequest","code":"custom","message":"No commits between pingcap:release-8.1 and ti-chi-bot:cherry-pick-8910-to-release-8.1"}],"documentation_url":"https://docs.github.com/rest/pulls/pulls#create-a-pull-request"} |
What problem does this PR solve?
Issue Number: close #8911
Problem Summary:
In #8721, we introduce a rule that: "if the regions of a given table is not totally removed from TiFlash, skip physically dropping it". However, it does not set the succeeded = false, so after all it will update the last_gc_safepoint.
When the whole cluster has few write commands, the gc_safepoint may not change. It make that the physically dropping only run after the gc_safepoint is changed again. Which will slow down the data disk reclaim.
What is changed and how it works?
succeeded = falselast_gc_safepointwill not get updatedddl_sync_interval_secondspassed,SchemaSyncService::gcwill run again even if thegc_safepointon PD side is not changedCheck List
Tests
Side effects
Documentation
Release note