cylc-flow icon indicating copy to clipboard operation
cylc-flow copied to clipboard

Platform subshell can cause remote init to happen on a different platform if triggering a task while paused

Open MetRonnie opened this issue 5 months ago • 0 comments

Reproducible Example

Start this workflow paused (it helps if you have as many platforms as possible to choose from in the subshell):

[scheduling]
    [[graph]]
        R1 = foo
[runtime]
    [[foo]]
        script = cylc message -- "$(hostname)"; false
        platform = $(python -m random -c platform1 platform2 platform3 platform4)

Trigger the task - you will see the scheduler report it is on one platform but the actual platform it is submitted to will be revealed to be different by the message that comes in.

Expected Behaviour

The unexpected behaviour is that the platform subshell is being re-evaluated when it should be cached.

The expected behaviour is that the the task remote inits on the platform that has already been evaluated. Subsequent submissions should re-evaluate it once on each submission.

MetRonnie avatar Sep 19 '25 10:09 MetRonnie