Environment
- GenPipes version: 6.1.1 (
/cvmfs/soft.mugqic/CentOS6/software/genpipes/genpipes-6.1.1)
- Pipeline:
longread_dnaseq, protocol nanopore
Description
longread_dnaseq is documented as accepting BAM input directly (not just FASTQ). From the pipeline's own README:
"Both protocols require as input a readset file, which provides sample metadata and paths to input data (FASTQ, FAST5 or BAM)."
and later, describing steps that consume BAM:
"Collect QC metrics on unaligned bam or fastq files with nanoplot." (metrics_nanoplot)
"BAM readset files are merged into one file per sample." (samtools_merge_bam_files)
"Uses pbmm2 to align fastq files or the raw hifi bam to the reference." (pbmm2_align)
Consistent with this, metrics_nanoplot runs fine on a BAM-only readset. But the very next step, minimap2_align, crashes immediately with an AttributeError for any readset that supplies BAM instead of FASTQ.
The cause is in pipelines/longread_dnaseq/__init__.py, minimap2_align:
if readset.fastq_files:
minimap2_input = readset.fastq_files
...
elif readset.bam_files:
minimap2_input = None
input_dependency = readset.bam_files
bam2fq_job = samtools.fastq(
readset.bam_files,
"-TMM,ML"
)
else:
_raise(SanitycheckError(...))
Command:
genpipes longread_dnaseq -t nanopore \
-c $GP_HOME/pipelines/longread_dnaseq/longread_dnaseq.base.ini $GP_HOME/pipelines/common_ini/narval.ini \
-r readset.ont.HG002.bam_only.tsv \
-s 2,3,5,6,7,16 \
-o . \
-g command.sh
###Behavior
Immediate crash while building the job graph, before any job/script is generated:
INFO:genpipes.core.pipeline:Create jobs for step minimap2_align...
Traceback (most recent call last):
...
File ".../genpipes/pipelines/longread_dnaseq/__init__.py", line 333, in minimap2_align
elif readset.bam_files:
^^^^^^^^^^^^^^^^^
AttributeError: 'LongReadReadset' object has no attribute 'bam_files'
Environment
/cvmfs/soft.mugqic/CentOS6/software/genpipes/genpipes-6.1.1)longread_dnaseq, protocolnanoporeDescription
longread_dnaseqis documented as accepting BAM input directly (not just FASTQ). From the pipeline's own README:and later, describing steps that consume BAM:
Consistent with this,
metrics_nanoplotruns fine on a BAM-only readset. But the very next step,minimap2_align, crashes immediately with anAttributeErrorfor any readset that supplies BAM instead of FASTQ.The cause is in
pipelines/longread_dnaseq/__init__.py,minimap2_align:Command:
###Behavior
Immediate crash while building the job graph, before any job/script is generated: