Skip to content

Resolve "aceDRG job can be marked succeeded even when it has failed"

Matthew Iadanza requested to merge 428-fix-silent-job_failures into main

Closes #428 (closed) Fixed one job that can silently fail:

  • AceDRG: If it cannot parse the SMILES string it will not create the files but still return a 0 return code and appear a a success. Added a check for the output files.

Two others that I chose not to fix: relion import movies and motioncorr. Import can produce and empty starfile if no movies are found and motioncorr can operate on an empty file.

I didn't fix these ones because they can be used in on-the-fly processing where they may not have any results and we don't want them to fail in that situation.

In the future we can add a on-the-fly job option that toggles a check for empty result files.

The ctffind job checks for silent failures of ctffind4 by looking for an empty output file so this technically might break on-the-fly processing in the same manner. All three should be updated with a toggle. Opened a separate issue for this #429

I also changed a test for writing submission scripts for jobs that operate in a working dir. The test originally used the AceDRG job as as sample job, but because AceDRG now has two commands the way the mocking was done broke the test. I just changed the sample job to EMplacement, which only has a single command.

Edited by Matthew Iadanza

Merge request reports