-
Notifications
You must be signed in to change notification settings - Fork 94
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
Re-evaluate the --initial/final/start/stop-cycle-point options for restarts #4062
Comments
Coming back to this, I'm pretty sure |
The 2 questions that I think we should come to a decision on for 8.0rc1:
|
I'm struggling to remember exactly why we have these as CLI options. Even setting the ICP on the command line, as opposed to changing it in the config file, is a pretty minor convenience with a significant downside: the installed config file doesn't reflect what actually got run. Maybe the need for it is less now that we have proper workflow installation built in?? |
I think this is low priority and can be bumped to 8.x? |
Proposal (need to decide whether to implement this for 8.0rc1):
As for the initial cycle point bit, I have checked, and in #4313 I made the |
All points addressed now |
The
ignore
value for the cycle point cli options (--icp=ignore
,--startcp=ignore
etc) forcylc play
are potentially confusing, and the behaviour is a little inconsistent.Final cycle point
When the scheduler shuts down, the final cycle point is saved to the database (edit: only if the CLI opt
--fcp
was used to set it, not if it was only specified in flow.cylc). On restart, this DB value is loaded.--fcp=ignore
causes Cylc to ignore the value stored in the DB, and instead use the value inflow.cylc[scheduling]final cycle point
. The two might be different:--fcp=<point>
was used in a previous run to override flow.cylc (then the cli-supplied value would have be saved in the DB).Issues
--fcp
won't do anything. Possibly this just needs to be documented clearer. (Doc PR: Add docs for cycle point options in restart cylc-doc#362)These apply to all 4 types of cycle point:
ignore
is potentially misleading, as one might get the idea it will basically set the final cycle point toNone
. Maybe--*-cycle-point=reload/refresh/reset
is clearer? However, the cycle point is reloaded fromflow.cylc[scheduling]
anyway if not previously set in the cli*. (Resolved in Change 'ignore' to 'reload' for cycle point cli opts #4313)Initial cycle point
Initial cycle point is handled in much the same way as final cycle point. However, this time there is a second way the value stored in the DB might be different from
flow.cylc[scheduling]
:flow.cylc[scheduling]initial cycle point = now
ornext()
orprevious()
, in which case the timepoint is evaluated at the time of first start and stored in the DBIssues
--icp=<point>
apart fromignore
will raise an error. However, you could in fact change the initial cycle point inflow.cylc[scheduling]
. So why not using the cli opt? (Resolved:--icp
option not valid for restart since Change 'ignore' to 'reload' for cycle point cli opts #4313)Start cycle point
Similar to above, but there is no way of specifying the start cycle point in flow.cylc.
Issues
--startcp=ignore
doesn't actually do anything? The start point for a restart is whatever the last incomplete cycle point at shutdown was. (Resolved:--startcp=ignore/reload
not valid since Change 'ignore' to 'reload' for cycle point cli opts #4313)Stop cycle point
Issues
--stopcp=ignore
is inconsistent with the others. While it ignores the stop cycle point in the database, it doesn't use[scheduling]stop after cycle point
, it instead uses the final cycle point (from the database if set there, otherwise flow.cylc). I think it should be changed to use[scheduling]stop after cycle point
if set, otherwise the final cycle point. (Make--stopcp=reload
use[scheduling]stop after cycle point
instead of the final cycle point #4543)*Apart from
stopcp
which is only reloaded fromflow.cylc
if not stored in the DB (which is the case if it was not set, or it was set but was reached)The text was updated successfully, but these errors were encountered: