...
In this case the normal behaviour would be kill both process, and re-queue the task.
In the extreme, we can by pass the authentication. (i.e.. allowing the request to be handled by the server).
...
Example: For tasks under suite “s1” add a zombie attribute, such that child label commands(i.e.. ecflow_client –label) never blocks the job: (not strictly needed as this is the default behaviour from release 4.0.5 onwards)
python
s1 = ecflow.Suite('s1') child_list = [ ChildCmdType.label ] zombie_attr = ZombieAttr(ZombieType.ecf, child_list, ZombieUserActionType.fob, 300) s1.add_zombie(zombie_attr)
text
suite s1 zombie ecf:fob:label:
- alter
ecflow_client --alter=add zombie "ecf:fob:label:" /s1
...
python
with ecflow.Suite('s1') as s1: with s1.add_family("critical") as crit : child_list = [ ] # empty child list means apply to all child commands crit.add_zombie(ZombieAttr(ZombieType.ecf, child_list, ZombieUserActionType.fail, 300)) crit.add_zombie(ZombieAttr(ZombieType.path, child_list, ZombieUserActionType.fail, 300)) crit.add_zombie(ZombieAttr(ZombieType.user, child_list, ZombieUserActionType.fail, 300))
text
suite s1 family critical zombie ecf:fail:: zombie path:fail:: zombie user:fail::
- alter
ecflow_client --alter=add zombie "ecf:fail::" /s1
ecflow_client --alter=add zombie "path:fail::" /s1
ecflow_client --alter=add zombie "user:fail::" /s1
...
Here are some further example of using --alter:
...