Clarification about sequential keyword in xtriggers

Cylc 8.3 added the sequential option for xtriggers. Say we had an xtrigger def my_xtrigger(my_in, my_out):, if we don’t add the sequential=True as per the example in the docs, can we still use the sequential option in the flow.cylc file, or does it need to exist in both? If it isn’t in the function definition, will it fail validation if we have a validation check?

Have you seen the User Guide documentation on this?

https://cylc.github.io/cylc-doc/stable/html/user-guide/writing-workflows/external-triggers.html#sequential-xtriggers

Yes, that link is in my message. It says you can set it, but I’m clarifying if it is mandatory to be a keyword to be usable or no matter what, if you use it in the flow file, it will work fine.

  • Xtriggers are not sequential by default.
  • When defining an xtrigger, you can override the default by setting sequential=True in the Python function signature (wall_clock does this).
  • When using an xtrigger in a workflow, you can override any default by setting the sequential argument in the [scheduling][xtriggers]<xtrigger> signature.

(Short answer is no, you don’t need to explicitly include sequential in the Python function definition)

1 Like