dzerbino / velvet

Short read de novo assembler using de Bruijn graphs, as published in: D.R. Zerbino and E. Birney. 2008. Velvet: algorithms for de novo short read assembly using de Bruijn graphs. Genome Research, 18: 821-829
https://europepmc.org/article/pmc/2336801
GNU General Public License v2.0
278 stars 99 forks source link

Segmentation Fault (velveth) with Paired End Illumina Data #57

Open hollybpalk opened 1 year ago

hollybpalk commented 1 year ago

Hello, I submitted velveth.sh on an HPC cluster at my university. I have installed velvet version "velvet-1.2.10". I ran velveth.sh with the following code: velveth OutputKmer119 119 -shortPaired -fastq -separate /home/.../trimmed_R1.fastq /home/.../trimmed_R2.fastq

The error below is returned. "10134 Segmentation fault"

Additionally, this is the log file: Compilation settings: CATEGORIES = 2 MAXKMERLENGTH = 149

The output folder, OutputKmer119, has two files: Sequences and Log

I would appreciate any help regarding how to fix this step in the assembly. Thank you!

dzerbino commented 1 year ago

Hello @hollybpalk ,

I'm afraid it is difficult to troubleshoot such an error without more information.

Does velveth run properly when run without options at all?

Could you generate a gdb report as explained at the end of the manual?

Thank you,

Daniel

hollybpalk commented 1 year ago

Hello Daniel, Thank you for your help. First, when I run velveth with no options I receive a list of compilation settings, usage, and formatting options. I am not sure if that is what you mean, but if not please let me know. Secondly, when the script crashes there is no core.dump file generated. Should this usually be generated in the output directory? As far as my script is able to go, it has also never generated a directory/Roadmaps file either. Do you have any suggestions for why the core.dump is not being created? Additionally, I have set the MAXKMERLENGTH to 149, however, when I perform the make debug as the manual says, it changes the MAXKMERLENGTH back to 31. Is this a mandatory setting for the debug and should I re-run my Velvet script with a kmer length of 31? Thank you!

dzerbino commented 1 year ago

Hello @hollybpalk ,

Evidently Velvet was properly compiled, such that it runs without parameters.

I'm surprised that it does not produce a core.dump file, as this is set by default, but some system administrators prefer to suppress these outputs on their systems (typically by using ulimit on Linux systems).

When Velvet crashed, was there any standard output text collected? The fact that it did not produce a Roadmaps file suggests that it crashed very early indeed, possibly while parsing the input files. Does the Sequences file match the content of the reads provided to Velvet?

Regarding the MAXKMERLENGTH parameter, you have to specify it every time you invoke make, for example:

make debug ’MAXKMERLENGTH=149’

Best regards,

Daniel

hollybpalk commented 1 year ago

Hello, I apologize for the late response. It looks like the only output texts are the Log file, Error file, and Sequences file. I inputted two paired-end, fastq files and it looks to have converted it to fasta. I will attempt the make debug again. Any other suggestions?

dzerbino commented 1 year ago

Hello @hollybpalk ,

It's very hard to say without more information. Would you have the standard output (i.e. screen output in interactive mode) of the Velveth run?

Best regards,

Daniel