-
Notifications
You must be signed in to change notification settings - Fork 27
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
Tes compliance: support multiple executors #427
Comments
@adamnovak would implementing this issue be a significant help to implementing TES with Toil? We are doing a round of issue prioritization and your input on this would be helpful, thanks! |
I think that having access to multiple executors would be a big help for allowing Toil to efficiently implement some parts of WDL, such as the Without being able to run Toil code against the same volumes, for WDL tasks where the output files need to be dynamically determined, we'd need to upload everything that potentially could be an output to shared storage and then go through it to identify the actual outputs. |
@MattMcL4475: Please also note that, as part of the core TES specs, TES compliant clients will rely on multiple executors to be supported. While so far we are making use of multiple executors to support individual server-side solutions (and so are not affected by TES-on-Azure's non-compliance), there is at least one project that we are working on (supporting Crypt4GH files in TES) that uses a middleware approach relying on multiple executors. But since we believe that the middleware-executor pattern is powerful for supercharging any TES implementation with individual functionalities, I think there will be more of those use cases that TES-on-Azure, without support for multiple executors, would miss out on. |
Thank you @adamnovak and @uniqueg for the feedback, we've made this a top priority and we'll have it implemented and released in Please keep the feedback coming if you see any high-priority features/bugs, thank you! |
Problem:
As per the current TES specification, multiple executors can be specified in a single request:
Since TES v1.1, the behavior for the case in which one of multiple executors fails can further be modified with the
ignore_error
property of thetesExecutor
schema:As discussed with @MattMcL4475, multiple executors are currently not supported in TES on Azure.
However, some client implementations such as workflow engines may rely on this feature, e.g., for setup and teardown steps or for scheduling two or more closely related tasks with similar requirements to minimize overheads.
Solution:
ignore_error
property of thetesExecutor
schema as described.Describe alternatives you've considered
N/A
Code dependencies
Not sure.
Additional context
Appropriate tests for this behavior are currently unavailable (see ga4gh/compliance-tests-ga4gh-tes#2).
The text was updated successfully, but these errors were encountered: