-
Notifications
You must be signed in to change notification settings - Fork 6k
ddl: update row count periodically when running reorg job #60828
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: update row count periodically when running reorg job #60828
Conversation
Signed-off-by: tangenta <[email protected]>
Hi @tangenta. Thanks for your PR. PRs from untrusted users cannot be marked as trusted with I understand the commands that are listed here. 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-sigs/prow repository. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #60828 +/- ##
================================================
+ Coverage 73.1336% 75.1744% +2.0408%
================================================
Files 1716 1765 +49
Lines 475706 490410 +14704
================================================
+ Hits 347901 368663 +20762
+ Misses 106437 98926 -7511
- Partials 21368 22821 +1453
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
Signed-off-by: tangenta <[email protected]>
Signed-off-by: tangenta <[email protected]>
/test unit-test |
@joccau: The specified target(s) for
Use
In response to this:
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-sigs/prow repository. |
Signed-off-by: tangenta <[email protected]>
/retest |
@tangenta: Cannot trigger testing until a trusted user reviews the PR and leaves an In response to this:
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-sigs/prow repository. |
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.
rest lgtm
jobCtx.stepCtx, cancelStep = context.WithCancelCause(jobCtx.ctx) | ||
defer cancelStep(context.Canceled) | ||
jobCtx.initStepCtx() | ||
defer jobCtx.cleanStepCtx() | ||
w.wg.Run(func() { |
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.
every time we enter runOneJobStep, we will refresh the job, so if we change back to the old bahavior, there is no need to keep this routine
but if we do remove this routine, will cancel be blocked? as fixed in #56404 cc @lance6716
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.
but if we do remove this routine, will cancel be blocked?
In this PR, I see in line 886 still calls stepCtxCancel
, so cancel should still be seen and processed timely.
Signed-off-by: tangenta <[email protected]>
Signed-off-by: tangenta <[email protected]>
Signed-off-by: tangenta <[email protected]>
Signed-off-by: tangenta <[email protected]>
Signed-off-by: tangenta <[email protected]>
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.
LGTM
Signed-off-by: tangenta <[email protected]>
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: Benjamin2037, D3Hunter 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:
|
/retest |
@tangenta: Cannot trigger testing until a trusted user reviews the PR and leaves an In response to this:
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-sigs/prow repository. |
/retest |
@tangenta: Cannot trigger testing until a trusted user reviews the PR and leaves an In response to this:
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-sigs/prow repository. |
/retest |
@tangenta: Cannot trigger testing until a trusted user reviews the PR and leaves an In response to this:
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-sigs/prow repository. |
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 #60145
Problem Summary:
#56404 introduced the step context for each step of a DDL job.
runReorgJob
is changed to a blocking implementation, resulting in the inability to update job's row count.What changed and how does it work?
This PR returns
dbterror.ErrWaitReorgTimeout
periodically to let the routine ofrunJobOneStep
update job's row count. It also managesstepCtx
carefully to avoid premature cancelling.Check List
Tests
The previous behavior was to run one job step and then get stuck inside.
Now the behavior is that it exits periodically, so there are many run one job steps, and the job row count is updated.
Side effects
Documentation
Release note
Please refer to Release Notes Language Style Guide to write a quality release note.