MissingOutputException в змейке - PullRequest
0 голосов
/ 03 марта 2020

Я пытаюсь запустить инструмент пикового вызова в среде conda, используя snakemake.

Сценарий выглядит так (я только добавил строки, связанные с проблемой):

rule all:
    input:
        expand('{project}/{organism}/{mapper}/seacr/{pattern}.auc.threshold.bed', pattern = PATTERN, sample = IDS, organism = config['org'], project = config['project'], mapper = config['mapper']) # SEACR - run the peak calling 

rule seacr_run:
    input:
        IP = '{project}/{organism}/{mapper}/seacr/IP_{PATTERN}.bedgraph',
        IgG = '{project}/{organism}/{mapper}/seacr/IgG_{PATTERN}.bedgraph',
    output:
        bed1 = '{project}/{organism}/{mapper}/seacr/{PATTERN}.auc.threshold.bed',
    shell:
        '''
        bash /fs/home/yeroslaviz/SEACR/SEACR_1.3.sh {input.IP} 0.01 non stringent {output.bed1}
        '''

При запуске -nps dryrun команды snamemake я получаю правильную команду, напечатанную в STDOUT

> snakemake -nps /fs/pool/pool-bcfngs/scripts/P193.ChipSeq.Snakemake -j 100
...
Building DAG of jobs...
Job counts:
        count   jobs
        1       all
        1       seacr_run
        2

[Tue Mar  3 13:56:19 2020]
rule seacr_run:
    input: P193/Mmu.GrCm38/bowtie2/seacr/IP_H3K4m3.bedgraph, P193/Mmu.GrCm38/bowtie2/seacr/IgG_H3K4m3.bedgraph
    output: P193/Mmu.GrCm38/bowtie2/seacr/H3K4m3.auc.threshold.bed
    jobid: 22
    wildcards: project=P193, organism=Mmu.GrCm38, mapper=bowtie2, PATTERN=H3K4m3

                bash /fs/home/yeroslaviz/SEACR/SEACR_1.3.sh P193/Mmu.GrCm38/bowtie2/seacr/IP_H3K4m3.bedgraph 0.01 non stringent P193/Mmu.GrCm38/bowtie2/seacr/H3K4m3.auc.threshold.bed

[Tue Mar  3 13:56:19 2020]
localrule all:
...

Job counts:
        count   jobs
        1       all
        1       seacr_run
        2
This was a dry-run (flag -n). The order of jobs does not reflect the order of execution.

При запуске вышеуказанной команды в командной строке инструмент работает без проблем. Но когда я пытаюсь запустить его в рабочем процессе snakemake, я получаю следующую ошибку:

Waiting at most 5 seconds for missing files.
MissingOutputException in line 67 of /fs/pool/pool-bcfngs/scripts/P193.ChipSeq.Snakemake:
Missing files after 5 seconds:
P193/Mmu.GrCm38/bowtie2/seacr/H3K4m3.auc.threshold.bed
This might be due to filesystem latency. If that is the case, consider to increase the wait time with --latency-wait.
Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message

Может кто-нибудь объяснить, что происходит?

Спасибо

...