skarupke / flat_hash_map

A very fast hashtable
1.69k stars 186 forks source link

SIGSEGV when using "-O2 -DNDEBUG" compile options #11

Open spektom opened 6 years ago

spektom commented 6 years ago

I'm getting the following error with compiler optimizations:

__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51  ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff66af801 in __GI_abort () at abort.c:79
#2  0x00007ffff66f8897 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff6825b9a "%s\n") at ../sysdeps/posix/libc_fatal.c:181
#3  0x00007ffff66ff90a in malloc_printerr (str=str@entry=0x7ffff6823d88 "free(): invalid pointer") at malloc.c:5350
#4  0x00007ffff6706e1c in _int_free (have_lock=0, p=0x7fffeffff138 <viya::util::tu_names+216>, av=0x7ffff6a5ac40 <main_arena>) at malloc.c:4157
#5  __GI___libc_free (mem=0x7fffeffff148 <ska::detailv8::sherwood_v8_block<std::pair<Dimensions, unsigned long>, (unsigned char)8>::empty_block()::empty_bytes>)
    at malloc.c:3124
#6  0x00007fffefb78513 in std::pair<ska::detailv8::sherwood_v8_table<std::pair<Dimensions, unsigned long>, Dimensions, DimensionsHasher, ska::detailv3::KeyOrValueHasher<Dimensions, std::pair<Dimensions, unsigned long>, DimensionsHasher>, std::equal_to<Dimensions>, ska::detailv3::KeyOrValueEquality<Dimensions, std::pair<Dimensions, unsigned long>, std::equal_to<Dimensions> >, std::allocator<std::pair<Dimensions, unsigned long> >, std::allocator<unsigned char>, (unsigned char)8>::templated_iterator<std::pair<Dimensions, unsigned long> >, bool> ska::detailv8::sherwood_v8_table<std::pair<Dimensions, unsigned long>, Dimensions, DimensionsHasher, ska::detailv3::KeyOrValueHasher<Dimensions, std::pair<Dimensions, unsigned long>, DimensionsHasher>, std::equal_to<Dimensions>, ska::detailv3::KeyOrValueEquality<Dimensions, std::pair<Dimensions, unsigned long>, std::equal_to<Dimensions> >, std::allocator<std::pair<Dimensions, unsigned long> >, std::allocator<unsigned char>, (unsigned char)8>::emplace_direct_hit<Dimensions&, unsigned long>(ska::detailv8::sherwood_v8_table<std::pair<Dimensions, unsigned long>, Dimensions, DimensionsHasher, ska::detailv3::KeyOrValueHasher<Dimensions, std::pair<Dimensions, unsigned long>, DimensionsHasher>, std::equal_to<Dimensions>, ska::detailv3::KeyOrValueEquality<Dimensions, std::pair<Dimensions, unsigned long>, std::equal_to<Dimensions> >, std::allocator<std::pair<Dimensions, unsigned long> >, std::allocator<unsigned char>, (unsigned char)8>::LinkedListIt, Dimensions&, unsigned long&&) ()

This issue doesn't happen in debug mode.

cebtenzzre commented 5 years ago

I've been unable to reproduce this, even with asan and ubsan. Could you be more specific as to what conditions are required to trigger this?

jcelerier commented 5 years ago

I'm having the same one. Interestingly, for me the bug only manifests when I compile my code as a shared library, not as a static executable ; here is a backtrace :

1  raise                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  0x7ffff49e1d7f 
2  abort                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  0x7ffff49cc672 
3  __libc_message                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         0x7ffff4a24878 
4  malloc_printerr                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        0x7ffff4a2b18a 
5  _int_free                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              0x7ffff4a2c97c 
6  __gnu_cxx::new_allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>>::deallocate                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              new_allocator.h          125 0x7fffe5b844f4 
7  std::allocator_traits<std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>>>::deallocate                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 alloc_traits.h           462 0x7fffe5b841e2 
8  ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::hash<UuidKey<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>>, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>>>::deallocate_data                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      flat_hash_map.hpp        880 0x7fffe5b83db2 
9  ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::hash<UuidKey<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>>, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>>>::rehash                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               flat_hash_map.hpp        658 0x7fffe5b85aae 
10 ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::hash<UuidKey<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>>, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>>>::grow                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 flat_hash_map.hpp        873 0x7fffe5b85604 
11 ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::hash<UuidKey<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>>, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>>>::emplace_new_key<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>(signed char, ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>> *, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>&&) flat_hash_map.hpp        831 0x7fffe5b8505c 
12 ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::hash<UuidKey<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>, std::equal_to<UuidKey<Execution::ProcessComponentFactory>>>, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>>>::emplace<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>>(std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory>>>&&)                                                                                                                                                                                                                                flat_hash_map.hpp        588 0x7fffe5b84c5b 
13 score::InterfaceList<Execution::ProcessComponentFactory>::insert                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          InterfaceList.hpp        109 0x7fffe5b847a1 
14 score::PluginLoader::registerPluginsImpl<score::GUIApplicationRegistrar>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  PluginManager.hpp        88  0x7ffff7b74160 
15 score::PluginLoader::registerPlugins<score::GUIApplicationRegistrar>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      PluginManager.hpp        119 0x7ffff7b6f821 
16 score::PluginLoader::loadPlugins<score::GUIApplicationRegistrar, score::GUIApplicationContext>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            PluginManager.hpp        176 0x7ffff7b6bc57 
17 score::GUIApplicationInterface::loadPluginData                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            ApplicationInterface.cpp 96  0x7ffff7b66518 
18 Application::init                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         Application.cpp          270 0x5555555e991a 
19 main                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      main.cpp                 159 0x55555561d507 
jcelerier commented 5 years ago

Here is an ASAN stacktrace, not very useful...

==7847==ERROR: AddressSanitizer: attempting free on address which was not malloc()-ed: 0x7fd489521da0 in thread T0
    #0 0x7fd49a7abca1 in operator delete(void*) /build/gcc/src/gcc/libsanitizer/asan/asan_new_delete.cc:135
    #1 0x7fd486b6dabb in __gnu_cxx::new_allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > >::deallocate(ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >*, unsigned long) /usr/include/c++/8.2.1/ext/new_allocator.h:125
    #2 0x7fd486b6d072 in std::allocator_traits<std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > > >::deallocate(std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > >&, ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >*, unsigned long) /usr/include/c++/8.2.1/bits/alloc_traits.h:462
    #3 0x7fd486b6c8a5 in ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::hash<UuidKey<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> > >, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > > >::deallocate_data(ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >*, unsigned long, signed char) /home/jcelerier/score/3rdparty/libossia/3rdparty/flat_hash_map/flat_hash_map.hpp:880
    #4 0x7fd486b70c8e in ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::hash<UuidKey<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> > >, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > > >::rehash(unsigned long) /home/jcelerier/score/3rdparty/libossia/3rdparty/flat_hash_map/flat_hash_map.hpp:658
    #5 0x7fd486b6ff7d in ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::hash<UuidKey<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> > >, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > > >::grow() /home/jcelerier/score/3rdparty/libossia/3rdparty/flat_hash_map/flat_hash_map.hpp:873
    #6 0x7fd486b6f486 in std::pair<ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::hash<UuidKey<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> > >, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > > >::templated_iterator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, bool> ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::hash<UuidKey<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> > >, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > > >::emplace_new_key<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >>(signed char, ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >*, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >&&) /home/jcelerier/score/3rdparty/libossia/3rdparty/flat_hash_map/flat_hash_map.hpp:831
    #7 0x7fd486b6ece9 in std::pair<ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::hash<UuidKey<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> > >, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > > >::templated_iterator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, bool> ska::detailv3::sherwood_v3_table<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, UuidKey<Execution::ProcessComponentFactory>, std::hash<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueHasher<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::hash<UuidKey<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> >, ska::detailv3::KeyOrValueEquality<UuidKey<Execution::ProcessComponentFactory>, std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >, std::equal_to<UuidKey<Execution::ProcessComponentFactory> > >, std::allocator<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > >, std::allocator<ska::detailv3::sherwood_v3_entry<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > > > > >::emplace<std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >>(std::pair<UuidKey<Execution::ProcessComponentFactory>, std::unique_ptr<Execution::ProcessComponentFactory, std::default_delete<Execution::ProcessComponentFactory> > >&&) /home/jcelerier/score/3rdparty/libossia/3rdparty/flat_hash_map/flat_hash_map.hpp:588
cebtenzzre commented 5 years ago

@jcelerier More useful than you think. Now we know what the issue actually is.

jcelerier commented 5 years ago

@Cebtenzzre found the cause and solution to the issue : https://github.com/smessmer/flat_hash_map/commit/a4be1e423d07d6646cfd5d0d95d51fc0cce5b2cd

cebtenzzre commented 5 years ago

@jcelerier What OS are you using?

jcelerier commented 5 years ago

@Cebtenzzre linux