dpryan79 / MethylDackel

A (mostly) universal methylation extractor for BS-seq experiments.
MIT License
164 stars 44 forks source link

Issue running MethylDackel extract in parallel mode using minConversionEfficiency #152

Open blue-moon22 opened 12 months ago

blue-moon22 commented 12 months ago

Hi there,

I'm having an issue running MethylDackel extract in parallel mode using minConversionEfficiency for some samples and not all.

For those samples that fail (call them Sample 1 and Sample 2), I'm running it in a Nextflow process within a Docker container (with MethylDackel version 0.6.1 installed with conda):

MethylDackel extract -@ 8 --mergeContext --minConversionEfficiency 0.9 /tmp/index/$index_file $bam -o ${prefix}.bedGraph

For Sample 1, this always fails. For Sample 2, it mostly succeeds, but sometimes fails.

When I am running with a single cpu -@ 1 or when I run it using --minConversionEfficiency 0.0 all succeed.

Backtrace of the core dump files consistently give me the following:

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `MethylDackel extract -@ 8 --mergeContext --minConversionEfficiency 0.9 /tmp/ind'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x0000555c4c2704c9 in computeConversionEfficiency ()
[Current thread is 1 (Thread 0x7f40861fc700 (LWP 1815))]
(gdb) bt
#0  0x0000555c4c2704c9 in computeConversionEfficiency ()
#1  0x0000555c4c27077c in filter_func ()
#2  0x00007f408f7dde63 in bam_plp64_auto () from /opt/conda/envs/mitrabio/bin/../lib/libhts.so.3
#3  0x00007f408f7de40b in bam_mplp64_auto () from /opt/conda/envs/mitrabio/bin/../lib/libhts.so.3
#4  0x0000555c4c275ed3 in extractCalls ()
#5  0x00007f408f896fa3 in start_thread (arg=<optimized out>) at pthread_create.c:486
#6  0x00007f408f6074cf in __libc_ifunc_impl_list (name=<optimized out>, array=0x7f40861fc700, max=1)
    at ../sysdeps/x86_64/multiarch/ifunc-impl-list.c:357
#7  0x0000000000000000 in ?? ()

I hope this can be fixed soon as running this using 1 CPU takes a while. Thank you for your time!