I tried to run vg surject
on a GAM file I generated with vg map
, but the call ended with "Segmentation fault (core dumped)" and the BAM file that was generated is truncated. I generated my graph from whole bacterial genomes and then did the following to index the graph and map my reads to it:
vg mod -X 32 graph.vg | vg mod -M 8 - | vg sort - > graph_mod.vg
vg index -x graph_mod.xg graph_mod.vg
vg prune -k 16 -e 3 graph_mod.vg > graph_prune.vg
vg index -g graph_mod.gcsa -k 16 graph_prune.vg
vg map -d graph_mod -f reads.fastq.gz > graph_reads.gam
This is the call that failed:
vg surject -x graph_mod.xg -b graph_reads.gam > graph_reads.bam
Should I use a different index for this?
Probably running out of memory. How much do you have? You may need to find a machine with more or utilize a high performance computing environment.
Thank you for the suggestion! I would hav thought that 94G overall would be enough, but maybe you're right and I should switch to the bigger cluster...
I am unfamiliar with the program, but usually most segfaults are the result of OOM errors assuming you've ensured your inputs are valid and the command is being called properly.. Does it say anything else in the error message other than the typical
seg fault: core dumped
?No, sadly that's the whole message. I ran the same function with a different argument to generate a different output and that worked well, so I assume the input is fine.