I am performing genome polishing on some PacBio data using PacBio tool
gcpp (arrow algorithm). The first iteration of polishing goes well, but during the second run, it crashed with a little informative error message:
terminate called without an active exception Aborted
Gcpp seems to not have an Issues page available at GitHub, so it is difficult to get a proper feedback to this. As far as I understand, this is an C++ error usually related to multi-threading problems, but do not understand why this would happen during a second run and not the first one.
Previous running arrow, files are aligned with
pbmm2 (the same kind of alignment is also done for iteration 1):
pbmm2 align arrow1.asm.fa subreads.bam asm.pbmm2.v2.bam --sort -j 24
Then arrow is executed as follow:
gcpp -j 24 asm.pbmm2.v2.bam -r arrow1.asm.fa -o arrow2.asm.gff,arrow2.asm.fa,arrow2.asm.fq
Which leads to the crash,
Any ideas on what is going on here and how could it be fixed?
EDIT: The error persist running the same files on a different system, and also lowering the number of threads (or not using parallelization at all). Start wondering if any input file got corrupted in a previous step?
--log-level DEBUG will reveal that program breaks after a particular step "Calling variants for contig" for one contig
20210218 13:53:26.651 -|- INFO -|- MaybeFlushContig -|- 0x7efc226e5700|| -|- Calling variants for contig: contig_133_1|arrow
Which is the fifth contig whose variants are called. Don't know yet how this could be related to the error above though.
EDIT3 Just realized there is an open issue for this at the pbbioconda repository. Not solved yet though.
EDIT4 Using arrow through
variantCaller 2.3.3 worked for me. The issue remains open but they are looking into it. Hope this eventually solves with a