-
Notifications
You must be signed in to change notification settings - Fork 289
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
owner, gcutil: always update service GC safepoint when owner finds new changefeeds #2512
owner, gcutil: always update service GC safepoint when owner finds new changefeeds #2512
Conversation
Signed-off-by: Neil Shen <[email protected]>
[REVIEW NOTIFICATION] This pull request has been approved by:
To complete the pull request process, please ask the reviewers in the list to review by filling The full list of commands accepted by this bot can be found here. Reviewer can indicate their review by submitting an approval review. |
This patch changes the behavior of GC, which means each time user creates a new changefeed, the GC will be blocked by 1 hour. Is this acceptable @leoppro |
Signed-off-by: Neil Shen <[email protected]>
Signed-off-by: Neil Shen <[email protected]>
/cc |
// initializing. | ||
// | ||
// See more gcutil doc. | ||
if err = o.updateGCSafepoint(stdCtx, state); err != nil { |
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 if updating GC safepoint failed here? updateGCSafepoint
doesn't guarantee the update op must succeed
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 current implementation update gc safepoint on a best-efforts basis.
updateGCSafepoint
retries internally, also we update ticdc-creating-<ID>
's TTL to 10min when we initialize changefeed in case updateGCSafepoint
fails.
Signed-off-by: Neil Shen <[email protected]>
Signed-off-by: Neil Shen <[email protected]>
/run-all-tests |
/run-leak-tests |
/run-integration-tests |
/run-all-tests |
/run-all-tests |
/run-kafka-tests |
Signed-off-by: ti-chi-bot <[email protected]>
In response to a cherrypick label: new pull request created: #2851. |
Signed-off-by: ti-chi-bot <[email protected]>
In response to a cherrypick label: new pull request created: #2852. |
Signed-off-by: ti-chi-bot <[email protected]>
In response to a cherrypick label: new pull request created: #2853. |
Signed-off-by: ti-chi-bot <[email protected]>
In response to a cherrypick label: new pull request created: #2854. |
What problem does this PR solve?
Extend creating service gc safepoint ttl to 1 hr to support creating changefeeds that needs long initialization time.
Also let TiCDC always update service GC safepoint when it finds a new changefeed, see https://github.com/pingcap/ticdc/pull/2512/files#diff-0e06be9eaec63633a515c0b4eafda0d674cfa49885009c96b1389c1f1002f22cR335
Close https://github.com/pingcap/ticdc/issues/2470
Check List
Tests
Create a changefeed that captures 60k tables.
Related changes
Release note