The --surject-to bam option in vg map resulted iun exactly the same error. I've tried using a graph with less paths as reference and ended up with another problem, so I'm not sure if the size of the reference is the problem.
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?
1 answer
The commands look okay, so this could be a bug. If you are able to share your data, please raise an issue on Github https://github.com/vgteam/vg/issues/new?assignees=&labels=&template=report-a-bug.md&title= and we' should be able to fix it.
Other things to try: the very latest vg release (if you're not using it already), or having vg map output bam directly with the --surject-to bam option.
Log in to answer this question.
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.