I want to use Nextflow for creating pipelines of singularity components which will be executed by Slurm job scheduler. I created a simple job to run just a single task:
#!/usr/bin/env nextflow process createGroups { executor = 'slurm' queue = 'upgrade' memory = '10 GB' time = '30 min' cpus = 8 clusterOptions = '--workdir /path/to/the/singularity/image' """ singularity run ... """ } The job executes successfully and gives exit status 0, but Nextflow arises "Missing 'stdout' file" error. There is the full output:
Error executing process > 'createGroups' Caused by: Missing 'stdout' file: .../work/89/449f849ffc77a967be91ed994da860/.command.out for process > createGroups Command executed: executor > slurm (1) [89/449f84] process > createGroups [100%] 1 of 1, failed: 1 ✘ Error executing process > 'createGroups' Caused by: Missing 'stdout' file: .../work/89/449f849ffc77a967be91ed994da860/.command.out for process > createGroups Command executed: singularity run ... Command exit status: 0 Command output: (empty) Work dir: .../work/89/449f849ffc77a967be91ed994da860 Tip: when you have fixed the problem you can continue the execution adding the option `-resume` to the run command line I couldn't find any solution to fix this error :(
Update: Using the slurm's --workdir parameter caused that error. I simply used "cd" command to change the path and it solved my problem.
https://stackoverflow.com/questions/66858401/missing-stdout-file-when-using-slurm-and-singularity March 30, 2021 at 12:57AM
没有评论:
发表评论