-
Notifications
You must be signed in to change notification settings - Fork 659
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
RFC: Simplify retry behaviour and unify it between plugins #3902
RFC: Simplify retry behaviour and unify it between plugins #3902
Conversation
f619e91
to
677c858
Compare
2023-08-17: Contributor's meeting notes: more discussion is needed to decide if an update to this proposal is needed. There are open questions. Eduardo to ask Union contributors to comment here. |
@fellhorn and I tried out the WIP implementation of this RFC by @hamersaw on this branch: https://github.com/flyteorg/flytepropeller/tree/feature/simplify-retries We ran the following experiments with both the old and the new behaviour:
TL;DR: In @hamersaw's branch, the last retry is not yet switched to non-interruptible as this RFC proposes but we added this functionality this PR: |
Signed-off-by: Fabio Grätz <[email protected]>
Co-authored-by: Dennis Keck <[email protected]> Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]>
Co-authored-by: Dennis Keck <[email protected]> Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]>
Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]>
Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]>
Signed-off-by: Fabio Grätz <[email protected]>
8a9409a
to
0c818a6
Compare
Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]>
Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]>
@davidmirror-ops Is the location proposed in this PR a good place to document that this RFC/behaviour exists? |
@fg91 Yes, I think it fits well. Thank you! |
Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]>
Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]>
@fellhorn and I opened a PR with some finishing touches into @hamersaw 's PR, see flyteorg/flytepropeller#623. As far as we can see, this completes the implementation of this RFC. If the others in the steering committee also approve, from my side this is ready @davidmirror-ops . |
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.
Looks good to me, thank you!
Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]>
* Document simplified retry behaviour introduced in #3902 Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]> * Update rsts/concepts/tasks.rst Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]> --------- Signed-off-by: Fabio M. Graetz, Ph.D. <[email protected]> Signed-off-by: Fabio Grätz <[email protected]>
For documentation purposes: In the RFC we added the following action item:
In the propeller config, one can in fact set: core:
propeller:
node-config:
ignore-retry-cause: true
default-max-attempts: 3 If the user now doesn't explicitly specify the number of retries in the task decorator, it defaults to (in this case) 3 attempts/2 retries. This works regardless of whether one uses The compromise here is that if The In theory, it would be nice if In practice, this doesn't matter to us as we always want to retry and if something wasn't allowed to run more than once, we would instead use "some kind of external semaphore" anyways. |
RFC for RFC incubator discussion #3793