Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vg crashes on centos 8 #3012

Open
gwylym opened this issue Sep 29, 2020 · 6 comments
Open

vg crashes on centos 8 #3012

gwylym opened this issue Sep 29, 2020 · 6 comments

Comments

@gwylym
Copy link

gwylym commented Sep 29, 2020

When we run the pre-compiled binary on centos 8 the program crashes. As this is not a desktop system and no xvg-utils is readily available, I am reporting here. The following is the stack trace:

Crash report for vg v1.27.0 "Deliceto"
Stack trace (most recent call last):
#10 Object "/scratch/wew/test/vg/vg", at 0x4e11f9, in _start
#9 Object "/scratch/wew/test/vg/vg", at 0x1ca37c8, in __libc_start_main
#8 Object "/scratch/wew/test/vg/vg", at 0x40b167, in main
#7 Object "/scratch/wew/test/vg/vg", at 0xa27d67, in vg::subcommand::Subcommand::operator()(int, char**) const
#6 Object "/scratch/wew/test/vg/vg", at 0xa03040, in main_msga(int, char**)
#5 Object "/scratch/wew/test/vg/vg", at 0xc17371, in vg::VG::path_string[abi:cxx11](vg::Path const&)
#4 Object "/scratch/wew/test/vg/vg", at 0xeda5c5, in vg::mapping_sequence[abi:cxx11](vg::Mapping const&, vg::Node const&)
#3 Object "/scratch/wew/test/vg/vg", at 0x1ca76f1, in __assert_fail
#2 Object "/scratch/wew/test/vg/vg", at 0x1ca767b, in __assert_fail_base
#1 Object "/scratch/wew/test/vg/vg", at 0x1cb40b0, in abort
#0 Object "/scratch/wew/test/vg/vg", at 0x125ee87, in raise

@gwylym
Copy link
Author

gwylym commented Sep 29, 2020

In a singularity container running ubuntu 18 vg also crashes. Here is the stack trace:
Crash report for vg v1.27.0 "Deliceto"
Stack trace (most recent call last):
#10 Object "/scratch/wew/test/vg/vg", at 0x4e11f9, in _start
#9 Object "/scratch/wew/test/vg/vg", at 0x1ca37c8, in __libc_start_main
#8 Object "/scratch/wew/test/vg/vg", at 0x40b167, in main
#7 Object "/scratch/wew/test/vg/vg", at 0xa27d67, in vg::subcommand::Subcommand::operator()(int, char**) const
#6 Object "/scratch/wew/test/vg/vg", at 0xa03040, in main_msga(int, char**)
#5 Object "/scratch/wew/test/vg/vg", at 0xc17371, in vg::VG::path_string[abi:cxx11](vg::Path const&)
#4 Object "/scratch/wew/test/vg/vg", at 0xeda5c5, in vg::mapping_sequence[abi:cxx11](vg::Mapping const&, vg::Node const&)
#3 Object "/scratch/wew/test/vg/vg", at 0x1ca76f1, in __assert_fail
#2 Object "/scratch/wew/test/vg/vg", at 0x1ca767b, in __assert_fail_base
#1 Object "/scratch/wew/test/vg/vg", at 0x1cb40b0, in abort
#0 Object "/scratch/wew/test/vg/vg", at 0x125ee87, in raise

@adamnovak
Copy link
Member

Can you post the message it prints, before referring to the stack trace, about the particular assertion that fails?

And can you post the data and command you are using so we can reproduce the issue?

@gwylym
Copy link
Author

gwylym commented Oct 9, 2020

The command we used on our centos 8 system was with the output-
export TMPDIR=tmp && /common/contrib/bin/vg msga -f sorted_contigs.fasta -b 207 -t 8 -a -w 128 > contig_graph.vg
vg: src/path.cpp:1695: const string vg::mapping_sequence(const vg::Mapping&, const vg::Node&): Assertion `mp.edit_size()==1' failed.
ERROR: Signal 6 occurred. VG has crashed. Run 'vg bugs --new' to report a bug.
Stack trace path: /tmp/vg_crash_j0LcCb/stacktrace.txt
Please include the stack trace file in your bug report!

The contig_graph.vg file is empty.

Our system is a node on our cluster and does not have a display attached.

@gwylym
Copy link
Author

gwylym commented Oct 9, 2020

The file we are using is a fasta file and is attached as a zip file.
sorted_contigs.fasta.zip

@adamnovak
Copy link
Member

You can ignore vg bugs --new. All it does is link you here.

I suspect we might not be tolerating sufficiently terrible mappings. We're getting hung up here:

vg/src/path.cpp

Lines 1695 to 1696 in b086d01

assert(mp.edit_size()==1);
return mp.edit(0).sequence();

We might need to replace that code with code that can handle multiple edits in a Mapping with no real graph position. I'm not sure how we're coming up with those; maybe they happen when the independent chunks are mapped and inserts abut inserts?

I'll see if I can work around the error, but it might not really be producing a good alignment.

Have you thought of using Erik's newer seqwish tool for turning these sequences into a graph? It's a lot smarter than msga.

@gwylym
Copy link
Author

gwylym commented Oct 12, 2020 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants