nextflow-io / nextflow-io/nextflow
PBS executor not working for task.config.getCpus() == 1 if no default set cluster
Nobody has claimed this yet.
- Dominant language
- Groovy
- Stars
- 3.5k
- Forks
- 811
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 61
Description
Dear Nextflow team,
Due to licensing issues we had to go back from MOAB/Torque to plain Torque on our cluster.
Because of the migration we lost the default resource configuration for each queue, thus processes with cpus = { 1} in the configuration do not run anymore. The -l nodes=1:ppn=1 line is missing in the jobscript and our lovely scheduler refuses to run the job.
I think the problem could be solved if you don't assume that there is a default values for nodes and cores set for the queues in PBS, e.g. also consider the case task.config.getCpus() == 1 here
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in modules/nextflow/src/main/groovy/nextflow/executor/PbsExecutor.groovy at the PBS resource-handling code linked in the issue. Check how the job script is generated when task.config.getCpus() equals 1 and no queue defaults exist. Done means the generated PBS script includes -l nodes=1:ppn=1 for that case and the relevant executor behavior is covered by the repository's tests, if available.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- groovy
- Domain
- hpc
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 38/100