Snakefile ValueError:需要多个值才能解压缩

时间:2018-12-13 16:12:26

标签: snakemake snakeyaml

我正在使用以下默认配置在群集上的snakefile中运行:

"__default__":
    "account"   : "myAccount"
    "queue"     : "myQueue"
    "nCPUs"     : "16"
    "memory"    : 20000
    "resources" : "\"select[mem>20000] rusage[mem=20000] span[hosts=1]\""
    "name"      : "JOBNAME.{rule}.{wildcards}"
    "output"    : "{rule}.{wildcards}.out"
    "error"     : "{rule}.{wildcards}.err"
    "time"      : "24:00:00"

对于某些规则,它运行正常,但是对于其中一条规则,则会引发此错误。

Traceback (most recent call last):
  File "home/conda3_64/lib/python3.5/site-packages/snakemake/__init__.py", line 537, in snakemake
    report=report)
  File "home/conda3_64/lib/python3.5/site-packages/snakemake/workflow.py", line 653, in execute
    success = scheduler.schedule()
  File "home/conda3_64/lib/python3.5/site-packages/snakemake/scheduler.py", line 286, in schedule
    self.run(job)
  File "home/conda3_64/lib/python3.5/site-packages/snakemake/scheduler.py", line 302, in run
    error_callback=self._error)
  File "home/conda3_64/lib/python3.5/site-packages/snakemake/executors.py", line 638, in run
    jobscript = self.get_jobscript(job)
  File "home/conda3_64/lib/python3.5/site-packages/snakemake/executors.py", line 496, in get_jobscript
    cluster=self.cluster_wildcards(job))
  File "home/conda3_64/lib/python3.5/site-packages/snakemake/executors.py", line 556, in cluster_wildcards
    return Wildcards(fromdict=self.cluster_params(job))
  File "home/conda3_64/lib/python3.5/site-packages/snakemake/executors.py", line 547, in cluster_params
    cluster.update(self.cluster_config.get(job.name, dict()))
ValueError: need more than 1 value to unpack

这就是我运行蛇形蛇的方式;

snakemake  -j 20 --cluster-config ./config.yaml --cluster "qsub -A {cluster.account}  -l walltime={cluster.time} -q {cluster.queue} -l nodes=1:ppn={cluster.nCPUs},mem={cluster.memory}" -p

如果我在没有群集snakemake的情况下运行它,它将只能正常运行。

类似的错误在这里ValueError: need more than 1 value to unpack python,但我无法联系。

1 个答案:

答案 0 :(得分:0)

我现在无法对其进行测试,但是基于该错误,我怀疑问题似乎出在调用qsub时未明确指定您的JOBNAME占位符。

在您的-N some_name参数中添加qsub应该可以解决该问题。