-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
This issue is related to #92
So, I figured out how to retrieve the namesMap of a multiColumn kDataFrame. The only thing is that indexPriorityQueue() function does not fill the column namesMap in the following line (I might be wrong, though)
kProcessor/include/kProcessor/defaultColumn.hpp
Lines 796 to 797 in 871d320
| flat_hash_map<uint32_t,string> namesMap; | |
The way I am retrieving the namesMap is similar to a usecase
// After loading KF
auto names_map = ((deduplicatedColumn<StringColorColumn>*)KF->columns["color"])->values->namesMap;
The error I got if tried to iterate over names_map:
[1] 16945 segmentation fault
Further backtrace: (happens as well if changed the namesMap from flat_hash_map to unordered_map)
#0 phmap::priv::raw_hash_set<phmap::priv::FlatHashMapPolicy<unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, phmap::Hash<unsigned int>, phmap::EqualTo<unsigned int>, std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::begin (this=0x555555bc89f0)
at /home/mabuelanin/dib-dev/try_kp2/lib/kProcessor/ThirdParty/kmerDecoder/lib/parallel-hashmap/parallel_hashmap/phmap.h:1162
it = {ctrl_ = 0x4 <error: Cannot access memory at address 0x4>, {slot_ = 0x555555bc65c0}}
it = <optimized out>
#1 main (argc=<optimized out>, argv=<optimized out>) at /home/mabuelanin/dib-dev/try_kp2/iterate_over_indexP.cpp:43
name = <optimized out>
__for_range = @0x555555bc89f0: {<phmap::priv::raw_hash_map<phmap::priv::FlatHashMapPolicy<unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, phmap::Hash<unsigned int>, phmap::EqualTo<unsigned int>, std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >> = {<phmap::priv::raw_hash_set<phmap::priv::FlatHashMapPolicy<unsigned int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, phmap::Hash<unsigned int>, phmap::EqualTo<unsigned int>, std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >> = {ctrl_ = 0x4 <error: Cannot access memory at address 0x4>, slots_ = 0x555555bc65c0, size_ = 8,
capacity_ = 93824999000688, infoz_ = {<No data fields>},
settings_ = {<phmap::priv::internal_compressed_tuple::CompressedTupleImpl<phmap::priv::CompressedTuple<unsigned long, phmap::--Type <RET> for more, q to quit, c to continue without paging--
Hash<unsigned int>, phmap::EqualTo<unsigned int>, std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, phmap::integer_sequence<unsigned long, 0, 1, 2, 3> >> = {<phmap::priv::internal_compressed_tuple::Storage<phmap::priv::CompressedTuple<unsigned long, phmap::Hash<unsigned int>, phmap::EqualTo<unsigned int>, std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, 0, false>> = {
value = 93824999001200}, <phmap::priv::internal_compressed_tuple::Storage<phmap::priv::CompressedTuple<unsigned long, phmap::Hash<unsigned int>, phmap::EqualTo<unsigned int>, std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, 1, true>> = {<phmap::Hash<unsigned int>> = {<phmap::phmap_unary_function<unsigned int, unsigned long>> = {<No data fields>}, <No data fields>}, <No data fields>}, <phmap::priv::internal_compressed_tuple::Storage<phmap::priv::CompressedTuple<unsigned long, phmap::Hash<unsigned int>, phmap::EqualTo<unsigned int>, std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, 2, true>> = {<phmap::EqualTo<unsigned int>> = {<No data fields>}, <No data fields>}, <phmap::priv::internal_compressed_tuple::Storage<phmap::priv::CompressedTuple<unsigned long, phmap::Hash<unsigned int>, phmap::EqualTo<unsigned int>, std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, 3, true>> = {<std::allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >> = {<__gnu_cxx::new_allocator<std::pair<unsigned int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >> = {<No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}, <No data fields>}}, <No data fields>}, <No data fields>}
--Type <RET> for more, q to quit, c to continue without paging--
__for_begin = <optimized out>
__for_end = <optimized out>
KF = <optimized out>
it = {origin = 0x555555bc5ed0, iterator = 0x555555bc87a0}Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels