'Wildcards' object has no attribute 'memory'
cassondranewman opened this issue · 2 comments
Hello,
I have been attempting to get dentist to complete on a cluster managed by slurm. Dentist fails with this message:
WorkflowError in line 562 of /lustre/project/gbru/gbru_X/RawData/dentist/Snakefile:
'Wildcards' object has no attribute 'memory'
File "/software/7/apps/snakemake/5.25.0/lib/python3.8/site-packages/snakemake/executors/__init__.py", line 111, in run_jobs
File "/software/7/apps/snakemake/5.25.0/lib/python3.8/site-packages/snakemake/executors/__init__.py", line 920, in run
I am worried that dentist/snakemake is not "seeing" the cluster.yml file which lists memory for the workflow. How can I fix this so that I can run dentist to completion?
My stderr, script, config.yaml, cluster.yml and snakemake.yml files are attached.
stderr.txt
Dentist_Script.txt
config.yaml.txt
cluster.txt
snakemake.txt
Generally speaking, this error occurs usually if Snakemake attempts to execute a rule on the cluster for which there is no proper entry in cluster.yml
. The violating rule is the last one listed in the Snakemake log, in this example it is mask_tandem
. A direct fix for the issue is to insert an appropriate section into cluster.yml
, e.g.:
mask_tandem:
memory: 8192
time: "00:30"
That said, it seems your specific problem occurred because the Snakefile
and cluster.yml
are out of sync (Snakefile
is older than the cluster.yml
). Please make sure you are using dentist
, Snakefile
and cluster.yml
from the same git commit. If the issue persists, please report back and I will fix the cluster.yml
in the repo.
After working with my cluster admin and adding more sections to the cluster.yml, the job was able to complete. Thank you for your help.