Skip to content

longread_dnaseq: minimap2_align crashes with AttributeError on BAM-only readsets #79

Description

@VandaLovejoy

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'

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions