Skip to content
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

Restructure suite run time log/job/ and work/ #1069

Merged
merged 4 commits into from
Aug 11, 2014

Conversation

matthewrmshin
Copy link
Contributor

Directory structure now looks like:

  • log/job/CYCLE/TASK/{01,02,...,NN}/{job,job.out,job.err,job.status}
  • work/CYCLE/TASK/

which should make it easier to archive the log for the whole cycle or to
housekeep all the work files of a given cycle.

log/job/CYCLE/TASK/NN is a symbolic link that points to the job log
directory of the latest submit for TASK.CYCLE.

Close #991.

@matthewrmshin matthewrmshin added this to the cylc-6 milestone Aug 7, 2014
@matthewrmshin
Copy link
Contributor Author

@hjoliver please take an initial look.

@@ -257,7 +257,7 @@ def _coerce_interval_list( value, keys, args, back_comp_unit_factor=1 ):
'manual completion' : vdr( vtype='boolean', default=False ),
'extra log files' : vdr( vtype='string_list', default=[] ),
'enable resurrection' : vdr( vtype='boolean', default=False ),
'work sub-directory' : vdr( vtype='string', default='$CYLC_TASK_ID' ),
'work sub-directory' : vdr( vtype='string', default='$CYLC_TASK_CYCLE_TIME/$CYLC_TASK_NAME' ),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

$CYLC_TASK_CYCLE_POINT

@hjoliver
Copy link
Member

hjoliver commented Aug 8, 2014

For a task that does multiple retries, the gcylc log viewer "Choose Log File:" dropdown list now shows a bunch of identical entry names - we need to put the try numbers back in there.

[update] actually it's worse than that - the logs retrieved are identical too (all the last one), not just their names.

@hjoliver
Copy link
Member

hjoliver commented Aug 8, 2014

Aside from the above trivialities, looks great.

Directory structure now looks like:
* `log/job/CYCLE/TASK/{01,02,...,NN}/{job,job.out,job.err,job.status}`
* `work/CYCLE/TASK/`

which should make it easier to archive the log for the whole cycle or to
housekeep all the work files of a given cycle.

`log/job/CYCLE/TASK/NN` is a symbolic link that points to the job log
directory of the latest submit for `TASK.CYCLE`.
It was displaying only the base names of the files, which would not be
very meaningful when we have multiple submits.

Rename CYCLE_TIME to CYCLE_POINT in `cylc.cfgspec.suite`.
@matthewrmshin
Copy link
Contributor Author

Fixed the variable name and the combo viewer.

N.B. I have re-based the branch against latest master.

@hjoliver
Copy link
Member

hjoliver commented Aug 9, 2014

@matthewrmshin - is this ready to go after a final review on Monday? (you just said "take an initial look" above).

@matthewrmshin
Copy link
Contributor Author

Yes, provided that we are all happy with this backward incompatible change.

@hjoliver
Copy link
Member

[note - previous suggestion to drop the "job" filename prefix deleted - even though it is redundant, it clearly groups the cylc-generated files and distinguishes them from user-generated log files]

@hjoliver
Copy link
Member

we are all happy with this backward incompatible change

I think we just need a one-off suite run directory conversion tool.

Here's my attempt (done on top of your branch): dfd4055

@matthewrmshin
Copy link
Contributor Author

(About the job prefix in file names... It allows the behaviour to be more or less similar to previous. Dropping the prefix will introduce a bigger change to the cylc code base, to Rose and other stuffs that users have been doing based on the previous directory structure.)

@matthewrmshin
Copy link
Contributor Author

(I have merged in your one-off upgrade script.)

hjoliver added a commit that referenced this pull request Aug 11, 2014
Restructure suite run time log/job/ and work/
@hjoliver hjoliver merged commit e5ac597 into cylc:master Aug 11, 2014
@matthewrmshin matthewrmshin deleted the log-work-restructure branch August 12, 2014 07:47
This was referenced Aug 13, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

log/job/ and work/ directory restructure
2 participants