-
Notifications
You must be signed in to change notification settings - Fork 1.1k
[CHASM] timer queue pure task processing logic #7702
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
// If this line of code is reached, the task's Validate() function returned no error, which indicates | ||
// that it is still expected to run. Return ErrTaskRetry to wait the machine to transition on the active | ||
// cluster. | ||
return consts.ErrTaskRetry |
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.
I am slightly concerned that the verification may never completes if new valid tasks are keep getting generated.
We probably want to add VT to the physical pure tasks and only execute/verify those tasks generated <= the VT recorded in the physical task. Can you help create a follow up task on this? Not high priority and we can address it later.
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.
Created OSS-4273 for follow-up.
if err != nil && errors.Is(err, consts.ErrTaskRetry) { | ||
return &struct{}{}, nil | ||
} | ||
|
||
return nil, 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.
we should still return err if it's not nil and also not ErrTaskRetry?
What changed?
Why?
How did you test it?
Potential risks
Documentation
Is hotfix candidate?