The way day/date attributes are used has changed. Recall how Recall day/date with time attributes:
Here the day/date act like a guard over the time. Hence the time is not considered until the day/date is free.
|
|
---|
This show the change when we have day/date:
In ecflow 4.0 the definition below can produce unexpected runs.
The behaviour in ecflow 4.0 happens because the time attribute are treated individually.
Here the time 10:00, was set free on Sunday.
The definition below in ecflow 4.X.X can produce an unexpected run of task t1, on Monday at 00:00
Code Block | ||
---|---|---|
| ||
...
family f1
day monday
task t1 # runs Monday@00:00 and Monday@10.00
time 10:00 # time was set free on Sunday |
In ecflow 5.X.X the day/date act like a guard over any other time attribute.
Hence the time is not considered until the day is free.
...
Code Block | ||
---|---|---|
|
...
| |
... family f1 day monday # Guards the time, until day/date is free task t1 time 10:00 # runs |
...
In ecflow 5.0, The day acts like a guard over the time.
Hence this produces the expected results.
on Monday@10.00 |
However, both behave the same way for the following definition.
Code Block |
---|
...
family f1
time 10:00 # set free on the sunday
task t1
day monday # runs Monday@00:00 and Monday@10.00 |
Repeat with day/date
The behavior of day/date attribute under a repeat has changed from ecflow 4.0.
In ecflow 4.X, if task t1 took longer than 1-hour task t2 would not run.
In ecflow 5.X, once the day monday is free on family f1, it stays free until the automatic re-queue caused by the parent repeat. The net effect being that task t2 will still run, even if we have strayed into Tuesday.
Code Block |
---|
suite s1
family f
repeat integer rep 0 1
family f1
day monday
task t1
time 23:00
task t2
... |
...
title | ecflow 5.0 |
---|
...