Problem
If job submission fails, no remote job log retrieval is attempted. This makes sense if the failure happens at submission time (i.e. the job was previously in the waiting state). However, if the job was previously in the submitted state (i.e. Cylc has polled the submitted task and found it no longer in the queue) then it would make sense to attempt remote job log retrieval. As a minimum there should be a job.status file. There may also be job.out and job.err files if the job ran but failed (for some reason) to run the cylc message command to record the job as started. Not retrieving these files means we are missing useful information which might help explain the cause of the submission failure. At the moment you have to know to look on the remote platform for any log files in these cases.
Proposed Solution
Whenever there is a submission failure, run the remote job log retrieval if the task was previously in the submitted state. Note that any retrieve job logs retry delays should be ignored in this case - just attempt the log retrieval once.
Problem
If job submission fails, no remote job log retrieval is attempted. This makes sense if the failure happens at submission time (i.e. the job was previously in the waiting state). However, if the job was previously in the submitted state (i.e. Cylc has polled the submitted task and found it no longer in the queue) then it would make sense to attempt remote job log retrieval. As a minimum there should be a
job.statusfile. There may also bejob.outandjob.errfiles if the job ran but failed (for some reason) to run thecylc messagecommand to record the job as started. Not retrieving these files means we are missing useful information which might help explain the cause of the submission failure. At the moment you have to know to look on the remote platform for any log files in these cases.Proposed Solution
Whenever there is a submission failure, run the remote job log retrieval if the task was previously in the submitted state. Note that any
retrieve job logs retry delaysshould be ignored in this case - just attempt the log retrieval once.