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

vcfwave 1.0.9 terminates after throwing an instance of 'std::out_of_range' #395

Open
freeseek opened this issue Oct 12, 2023 · 3 comments
Open
Labels
bug Genuine bug

Comments

@freeseek
Copy link

$ echo -e "##fileformat=VCFv4.2\n##contig=<ID=20>\n#CHROM\tPOS\tID\tREF\tALT\tQUAL\tFILTER\tINFO\n20\t8208842\t.\t ATAATA\tTTAATT\t.\t.\t." | vcfwave
##fileformat=VCFv4.2
##contig=<ID=20>
##INFO=<ID=TYPE,Number=A,Type=String,Description="The type of allele, either snp, mnp, ins, del, or complex.">
##INFO=<ID=LEN,Number=A,Type=Integer,Description="allele length">
##INFO=<ID=ORIGIN,Number=1,Type=String,Description="Decomposed from a complex record using vcflib vcfwave and alignment with WFA2-lib.">
##INFO=<ID=INV,Number=A,Type=String,Description="Count of haplotypes which are aligned in the inverted orientation using vcflib vcfwave.">
#CHROM	POS	ID	REF	ALT	QUAL	FILTER	INFO
vcfwave 1.0.9 processing...
terminate called after throwing an instance of 'std::out_of_range'
  what():  vector::_M_range_check: __n (which is 0) >= this->size() (which is 0)
Aborted (core dumped)

If I use valgrind:

$ echo -e "##fileformat=VCFv4.2\n##contig=<ID=20>\n#CHROM\tPOS\tID\tREF\tALT\tQUAL\tFILTER\tINFO\n20\t8208842\t.\t ATAATA\tTTAATT\t.\t.\t." | valgrind --leak-check=full --show-leak-kinds=all -s vcfwave
==59968== Memcheck, a memory error detector
==59968== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al.
==59968== Using Valgrind-3.21.0 and LibVEX; rerun with -h for copyright info
==59968== Command: vcfwave
==59968== 
##fileformat=VCFv4.2
##contig=<ID=20>
##INFO=<ID=TYPE,Number=A,Type=String,Description="The type of allele, either snp, mnp, ins, del, or complex.">
##INFO=<ID=LEN,Number=A,Type=Integer,Description="allele length">
##INFO=<ID=ORIGIN,Number=1,Type=String,Description="Decomposed from a complex record using vcflib vcfwave and alignment with WFA2-lib.">
##INFO=<ID=INV,Number=A,Type=String,Description="Count of haplotypes which are aligned in the inverted orientation using vcflib vcfwave.">
#CHROM	POS	ID	REF	ALT	QUAL	FILTER	INFO
vcfwave 1.0.9 processing...
terminate called after throwing an instance of 'std::out_of_range'
  what():  vector::_M_range_check: __n (which is 0) >= this->size() (which is 0)
==59968== 
==59968== Process terminating with default action of signal 6 (SIGABRT)
==59968==    at 0x4DD999B: __pthread_kill_implementation (pthread_kill.c:44)
==59968==    by 0x4DD999B: __pthread_kill_internal (pthread_kill.c:78)
==59968==    by 0x4DD999B: pthread_kill@@GLIBC_2.34 (pthread_kill.c:89)
==59968==    by 0x4D82865: raise (raise.c:26)
==59968==    by 0x4D668B6: abort (abort.c:79)
==59968==    by 0x4A14F05: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A26E6B: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A26ED6: std::terminate() (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A27137: __cxa_throw (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A182D0: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x11300E: main (in vcfwave)
==59968== 
==59968== HEAP SUMMARY:
==59968==     in use at exit: 81,834 bytes in 25 blocks
==59968==   total heap usage: 249 allocs, 224 frees, 4,377,666 bytes allocated
==59968== 
==59968== 8 bytes in 1 blocks are still reachable in loss record 1 of 25
==59968==    at 0x4845828: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4CD715C: ??? (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x4CEC9CA: ??? (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x4CD5A7C: ??? (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x400536D: call_init.part.0 (dl-init.c:90)
==59968==    by 0x4005472: call_init (dl-init.c:136)
==59968==    by 0x4005472: _dl_init (dl-init.c:137)
==59968==    by 0x401EB6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
==59968== 
==59968== 31 bytes in 1 blocks are still reachable in loss record 2 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4AC8F1D: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4ACA80F: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_append(char const*, unsigned long) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x10F773: main (in vcfwave)
==59968== 
==59968== 32 bytes in 1 blocks are still reachable in loss record 3 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x114785: void std::vector<int, std::allocator<int> >::_M_realloc_insert<int>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int&&) (in vcfwave)
==59968==    by 0x10EB34: main (in vcfwave)
==59968== 
==59968== 32 bytes in 1 blocks are still reachable in loss record 4 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x1166D1: std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::vector(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (in vcfwave)
==59968==    by 0x116A67: split(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (in vcfwave)
==59968==    by 0x11A03A: vcflib::Variant::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, bool) (in vcfwave)
==59968==    by 0x111297: main (in vcfwave)
==59968== 
==59968== 32 bytes in 1 blocks are still reachable in loss record 5 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x116299: void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag) (in vcfwave)
==59968==    by 0x12577E: std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) [clone .constprop.0] [clone .isra.0] (in vcfwave)
==59968==    by 0x110422: main (in vcfwave)
==59968== 
==59968== 61 bytes in 1 blocks are still reachable in loss record 6 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4AC8F1D: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A424FC: std::basic_istream<char, std::char_traits<char> >& std::getline<char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x118A32: vcflib::VariantCallFile::parseHeader() (in vcfwave)
==59968==    by 0x10EA71: main (in vcfwave)
==59968== 
==59968== 64 bytes in 1 blocks are still reachable in loss record 7 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x114D94: std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::_M_default_append(unsigned long) (in vcfwave)
==59968==    by 0x11A42C: vcflib::Variant::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, bool) (in vcfwave)
==59968==    by 0x111297: main (in vcfwave)
==59968== 
==59968== 72 bytes in 1 blocks are still reachable in loss record 8 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x1221F4: std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) [clone .constprop.0] [clone .isra.0] (in vcfwave)
==59968==    by 0x11A28B: vcflib::Variant::parse(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, bool) (in vcfwave)
==59968==    by 0x111297: main (in vcfwave)
==59968== 
==59968== 72 bytes in 1 blocks are still reachable in loss record 9 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x12170A: vcflib::VariantAllele& std::vector<vcflib::VariantAllele, std::allocator<vcflib::VariantAllele> >::emplace_back<vcflib::VariantAllele>(vcflib::VariantAllele&&) [clone .isra.0] (in vcfwave)
==59968==    by 0x11C0E7: vcflib::WfaVariant::wfa_parsedAlternates(bool, bool, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, wavefront_aligner_attr_t*, int, int, int, bool) [clone .constprop.0] (in vcfwave)
==59968==    by 0x10F08A: main (in vcfwave)
==59968== 
==59968== 78 bytes in 1 blocks are still reachable in loss record 10 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4AC8E4E: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_assign(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x118ACD: vcflib::VariantCallFile::parseHeader() (in vcfwave)
==59968==    by 0x10EA71: main (in vcfwave)
==59968== 
==59968== 88 bytes in 1 blocks are still reachable in loss record 11 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x12499E: std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&>&&, std::tuple<>&&) [clone .constprop.0] [clone .isra.0] (in vcfwave)
==59968==    by 0x10FDE1: main (in vcfwave)
==59968== 
==59968== 94 bytes in 1 blocks are still reachable in loss record 12 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4A6F000: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A4F52E: std::logic_error::logic_error(char const*) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A4F63C: std::out_of_range::out_of_range(char const*) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A532A0: std::__throw_out_of_range_fmt(char const*, ...) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x11300E: main (in vcfwave)
==59968== 
==59968== 96 bytes in 1 blocks are still reachable in loss record 13 of 25
==59968==    at 0x484A993: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4CD7194: ??? (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x4CD59C2: ??? (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x4CD5A98: ??? (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x400536D: call_init.part.0 (dl-init.c:90)
==59968==    by 0x4005472: call_init (dl-init.c:136)
==59968==    by 0x4005472: _dl_init (dl-init.c:137)
==59968==    by 0x401EB6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
==59968== 
==59968== 96 bytes in 1 blocks are still reachable in loss record 14 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x117269: std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::vector<vcflib::VariantAllele, std::allocator<vcflib::VariantAllele> >, bool>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::pair<std::vector<vcflib::VariantAllele, std::allocator<vcflib::VariantAllele> >, bool> > > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (in vcfwave)
==59968==    by 0x11C0BC: vcflib::WfaVariant::wfa_parsedAlternates(bool, bool, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, wavefront_aligner_attr_t*, int, int, int, bool) [clone .constprop.0] (in vcfwave)
==59968==    by 0x10F08A: main (in vcfwave)
==59968== 
==59968== 96 bytes in 1 blocks are still reachable in loss record 15 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x117269: std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::vector<vcflib::VariantAllele, std::allocator<vcflib::VariantAllele> >, bool>, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::pair<std::vector<vcflib::VariantAllele, std::allocator<vcflib::VariantAllele> >, bool> > > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (in vcfwave)
==59968==    by 0x11C245: vcflib::WfaVariant::wfa_parsedAlternates(bool, bool, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, wavefront_aligner_attr_t*, int, int, int, bool) [clone .constprop.0] (in vcfwave)
==59968==    by 0x10F08A: main (in vcfwave)
==59968== 
==59968== 144 bytes in 1 blocks are possibly lost in loss record 16 of 25
==59968==    at 0x4845828: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4A25CB3: __cxa_allocate_exception (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A53292: std::__throw_out_of_range_fmt(char const*, ...) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x11300E: main (in vcfwave)
==59968== 
==59968== 192 bytes in 1 blocks are still reachable in loss record 17 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x1166D1: std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::vector(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > const&) (in vcfwave)
==59968==    by 0x1169D6: split(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char) (in vcfwave)
==59968==    by 0x10EAB0: main (in vcfwave)
==59968== 
==59968== 224 bytes in 1 blocks are still reachable in loss record 18 of 25
==59968==    at 0x4845828: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4CD715C: ??? (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x4CEBF3E: ??? (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x4CDA4A4: omp_set_num_threads (in /usr/lib/x86_64-linux-gnu/libgomp.so.1.0.0)
==59968==    by 0x10E6ED: main (in vcfwave)
==59968== 
==59968== 288 bytes in 1 blocks are still reachable in loss record 19 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x12170A: vcflib::VariantAllele& std::vector<vcflib::VariantAllele, std::allocator<vcflib::VariantAllele> >::emplace_back<vcflib::VariantAllele>(vcflib::VariantAllele&&) [clone .isra.0] (in vcfwave)
==59968==    by 0x11CA0A: vcflib::WfaVariant::wfa_parsedAlternates(bool, bool, bool, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, wavefront_aligner_attr_t*, int, int, int, bool) [clone .constprop.0] (in vcfwave)
==59968==    by 0x10F08A: main (in vcfwave)
==59968== 
==59968== 288 bytes in 1 blocks are still reachable in loss record 20 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x10F183: main (in vcfwave)
==59968== 
==59968== 368 bytes in 1 blocks are still reachable in loss record 21 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x125759: std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, main::trackinfo> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) [clone .constprop.0] [clone .isra.0] (in vcfwave)
==59968==    by 0x110422: main (in vcfwave)
==59968== 
==59968== 530 bytes in 1 blocks are still reachable in loss record 22 of 25
==59968==    at 0x4845FA3: operator new(unsigned long) (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4AC8F1D: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_mutate(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4AC9FFA: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_replace(unsigned long, unsigned long, char const*, unsigned long) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x119CAE: std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > join<char const [2], std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >&, char const (&) [2]) (in vcfwave)
==59968==    by 0x11B3FB: vcflib::VariantCallFile::addHeaderLine(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >) (in vcfwave)
==59968==    by 0x10EC78: main (in vcfwave)
==59968== 
==59968== 1,024 bytes in 1 blocks are still reachable in loss record 23 of 25
==59968==    at 0x4845828: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4DC0CBC: _IO_file_doallocate (filedoalloc.c:101)
==59968==    by 0x4DD0948: _IO_doallocbuf (genops.c:347)
==59968==    by 0x4DCE50F: _IO_file_overflow@@GLIBC_2.2.5 (fileops.c:745)
==59968==    by 0x4DCEFEE: _IO_new_file_xsputn (fileops.c:1244)
==59968==    by 0x4DCEFEE: _IO_file_xsputn@@GLIBC_2.2.5 (fileops.c:1197)
==59968==    by 0x4DC2471: fwrite (iofwrite.c:39)
==59968==    by 0x4AB91B4: std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, long) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x10EC9A: main (in vcfwave)
==59968== 
==59968== 4,096 bytes in 1 blocks are still reachable in loss record 24 of 25
==59968==    at 0x4845828: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4DC0CBC: _IO_file_doallocate (filedoalloc.c:101)
==59968==    by 0x4DD0948: _IO_doallocbuf (genops.c:347)
==59968==    by 0x4DCDE33: _IO_file_underflow@@GLIBC_2.2.5 (fileops.c:486)
==59968==    by 0x4DD09EE: _IO_default_uflow (genops.c:362)
==59968==    by 0x4A8DE40: __gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >::underflow() (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x4A42579: std::basic_istream<char, std::char_traits<char> >& std::getline<char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char) (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x118A32: vcflib::VariantCallFile::parseHeader() (in vcfwave)
==59968==    by 0x10EA71: main (in vcfwave)
==59968== 
==59968== 73,728 bytes in 1 blocks are still reachable in loss record 25 of 25
==59968==    at 0x4845828: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==59968==    by 0x4A23491: ??? (in /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.32)
==59968==    by 0x400536D: call_init.part.0 (dl-init.c:90)
==59968==    by 0x4005472: call_init (dl-init.c:136)
==59968==    by 0x4005472: _dl_init (dl-init.c:137)
==59968==    by 0x401EB6F: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
==59968== 
==59968== LEAK SUMMARY:
==59968==    definitely lost: 0 bytes in 0 blocks
==59968==    indirectly lost: 0 bytes in 0 blocks
==59968==      possibly lost: 144 bytes in 1 blocks
==59968==    still reachable: 81,690 bytes in 24 blocks
==59968==                       of which reachable via heuristic:
==59968==                         stdstring          : 94 bytes in 1 blocks
==59968==         suppressed: 0 bytes in 0 blocks
==59968== 
==59968== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
Aborted (core dumped)
@freeseek freeseek added the bug Genuine bug label Oct 12, 2023
@nvnieuwk
Copy link

I got the same issue! Any news on this?

@WeiYang-BAI
Copy link

I also got the same error. Does anyone have any solutions?

@WeiYang-BAI
Copy link

I also got the same error. Does anyone have any solutions?

It seems that the absence of certain annotations in the INFO column, such as AF and AT, has resulted in this issue. Not sure why this information is considered relevant. Also, the variations in these annotations seem to yield similar results...

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

No branches or pull requests

3 participants