-
Notifications
You must be signed in to change notification settings - Fork 93
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
Task expire optionality. #6020
Task expire optionality. #6020
Conversation
I'm currently working towards this on my branch, but still useful to see what you've done. |
OK, given that |
BTW note my use of To fit the model better there should really be an opposite (probably just internal)
This would allow the same internals to be used for all outputs. (Arguably |
See also #6001 (comment) |
My branch does things a little differently as I've centralised some of the validation and requirement logic into the completion expression so I would rather superseed this branch. |
There are a couple of issues with the definition of completion as written, I have a cleaner solution that keeps the intended behaviour but fixes the edge cases, no opposite is required the way I've done it. I've not put it up yet as I want to get a bit further on with validation and testing to make sure it's watertight. Sidenote, the opposites of expired are succeeded, failed and submit-failed (i.e. the other three "final" outputs). Due to the incremental accumulation of task outputs through multiple submissions, we can't really do |
# Avoid clock-expiring an active task: | ||
itask.expire_time = None |
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 haven't handled clock-expiry of active tasks (I'm implementing the opt outputs proposal which is just about outputs).
Presumably if a task (submit-)fails and has [submission retries configured, then it should be allowed to expire between retries?
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.
Yes, I think so.
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 an issue for the clock-expire of active tasks thing: #6025
I would add Then my suggestion, to use an internal
Agreed, but I don't think that's relevant here. I only meant "opposite" in the same sense that succeeded and failed are opposite, for a given job. |
It makes sense to disable (or postpone) clock-expires for active tasks. However, users can always set the "expired" output on a task, the same way they can set succeeded or failed.
Still not mutually exclusive. |
Closing as superseded by @oliver-sanders yet-to-posted optional outputs extension PR. |
Salvaged from the aborted #5934, in case it's still useful.
validation:
:expired
must be optional if usedruntime expire:
@oliver-sanders dunno if you've already re-implemented this functionality on your new post
cylc set
branch? If so, apologies for not posting this sooner.There may be a couple of small errors in extracting this code from the original branch, but I won't bother with that, or tests, unless we decide to keep this.
Check List
CONTRIBUTING.md
and added my name as a Code Contributor.setup.cfg
(andconda-environment.yml
if present).CHANGES.md
entry included if this is a change that can affect users?.?.x
branch.