phylanx
phylanx copied to clipboard
Failure to insert into typename registry
Not sure what to make of this error. I am getting it from the phy_rand.py code. I don't have a small example that causes this issue at the moment.
terminate called after throwing an instance of 'hpx::detail::exception_with_info<hpx::exception>'
what(): failed to insert base_set_event_action into typename to id registry.: HPX(invalid_status)
stack trace is
#0 0x00007ffff6ec69fb in raise () from /lib64/libc.so.6
#1 0x00007ffff6ec8800 in abort () from /lib64/libc.so.6
#2 0x00007fffe38a2025 in __gnu_cxx::__verbose_terminate_handler() () from /lib64/libstdc++.so.6
#3 0x00007fffe389fc16 in ?? () from /lib64/libstdc++.so.6
#4 0x00007fffe389eb19 in ?? () from /lib64/libstdc++.so.6
#5 0x00007fffe389f508 in __gxx_personality_v0 () from /lib64/libstdc++.so.6
#6 0x00007ffff396cee3 in ?? () from /lib64/libgcc_s.so.1
#7 0x00007ffff396d70e in _Unwind_Resume () from /lib64/libgcc_s.so.1
#8 0x00007fffe034653f in _GLOBAL__sub_I_base_lco.cpp () from /usr/local/lib64/libhpx.so.1
#9 0x00007ffff7de7b33 in _dl_init () from /lib64/ld-linux-x86-64.so.2
#10 0x00007ffff7deca8a in dl_open_worker () from /lib64/ld-linux-x86-64.so.2
#11 0x00007ffff6fe4ebf in _dl_catch_error () from /lib64/libc.so.6
#12 0x00007ffff7debf99 in _dl_open () from /lib64/ld-linux-x86-64.so.2
#13 0x00007ffff777ef26 in dlopen_doit () from /lib64/libdl.so.2
#14 0x00007ffff6fe4ebf in _dl_catch_error () from /lib64/libc.so.6
#15 0x00007ffff777f6a5 in _dlerror_run () from /lib64/libdl.so.2
#16 0x00007ffff777efb1 in dlopen@@GLIBC_2.2.5 () from /lib64/libdl.so.2
#17 0x00007fffe6962716 in hpx::util::plugin::dll::LoadLibrary (this=0x7fffffff6a00, ec=..., force=false)
at /hpx/libs/core/plugin/include/hpx/plugin/detail/dll_dlopen.hpp:292
#18 0x00007fffe69624d0 in hpx::util::plugin::dll::load_library (this=0x7fffffff6a00, ec=...)
at /hpx/libs/core/plugin/include/hpx/plugin/detail/dll_dlopen.hpp:148
#19 0x00007fffe6e09397 in hpx::util::init_ini_data_default (libs="/usr/local/lib64/hpx", ini=..., basenames=std::map with 6 elements = {...},
modules=std::map with 1 element = {...}, component_registries=std::vector of length 0, capacity 0)
at /hpx/libs/full/runtime_configuration/src/init_ini_data.cpp:510
#20 0x00007fffe6e15271 in hpx::util::runtime_configuration::load_component_path (this=0x7fffffffb3d0,
plugin_registries=std::vector of length 0, capacity 0, component_registries=std::vector of length 0, capacity 0, path="/usr/local/lib64/hpx",
component_paths=std::set with 1 element = {...}, basenames=std::map with 6 elements = {...})
at /hpx/libs/full/runtime_configuration/src/runtime_configuration.cpp:591
#21 0x00007fffe6e1558a in hpx::util::runtime_configuration::load_component_paths (this=0x7fffffffb3d0,
plugin_registries=std::vector of length 0, capacity 0, component_registries=std::vector of length 0, capacity 0,
---Type <return> to continue, or q <return> to quit---
component_base_paths="/usr/local:/usr/local:/home/jovyan/phylanx/build.Debug:/home/jovyan/phylanx/build.Debug",
component_path_suffixes="/lib64/hpx:/bin/hpx:/lib/hpx:/bin/hpx:/lib/phylanx:/bin/phylanx:/lib/phylanx:/bin/phylanx",
component_paths=std::set with 1 element = {...}, basenames=std::map with 6 elements = {...})
at /hpx/libs/full/runtime_configuration/src/runtime_configuration.cpp:635
#22 0x00007fffe6e1596f in hpx::util::runtime_configuration::load_modules (this=0x7fffffffb3d0,
component_registries=std::vector of length 0, capacity 0) at /hpx/libs/full/runtime_configuration/src/runtime_configuration.cpp:671
#23 0x00007fffe6c2c399 in hpx::util::command_line_handling::call (this=0x7fffffffb330, desc_cmdline=..., argc=2, argv=0x7fffffffdc08,
component_registries=std::vector of length 0, capacity 0) at /hpx/libs/full/command_line_handling/src/command_line_handling.cpp:1587
#24 0x00007fffe6c6463d in hpx::detail::run_or_start(hpx::util::function<int (hpx::program_options::variables_map&), false> const&, int, char**, hpx::init_params const&, bool) (f=..., argc=2, argv=0x7fffffffdc08, params=..., blocking=false) at /hpx/libs/full/init_runtime/src/hpx_init.cpp:826
#25 0x00007fffee6755b7 in hpx::start(hpx::util::function<int (hpx::program_options::variables_map&), false> const&, int, char**, hpx::init_params const&) (f=..., argc=2, argv=0x7fffffffdc08, params=...) at /usr/local/include/hpx/hpx_start_impl.hpp:76
#26 0x00007fffee6756f8 in hpx::start(hpx::util::function<int (int, char**), false> const&, int, char**, hpx::init_params const&) (f=..., argc=2,
argv=0x7fffffffdc08, params=...) at /usr/local/include/hpx/hpx_start_impl.hpp:97
#27 0x00007fffee675f72 in phylanx::bindings::manage_global_runtime::manage_global_runtime (this=0xe47ca0,
config=std::vector of length 6, capacity 6 = {...}) at /home/jovyan/phylanx/python/src/init_hpx.cpp:180
#28 0x00007fffee674253 in phylanx::bindings::init_hpx_runtime (cfg=std::vector of length 6, capacity 6 = {...})
at /home/jovyan/phylanx/python/src/init_hpx.cpp:280
#29 0x00007fffee67cd11 in pybind11::detail::argument_loader<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&>::call_impl<void, void (*&)(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&), 0ul, pybind11::detail::void_type>(void (*&)(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&), std::integer_sequence<unsigned long, 0ul>, pybind11::detail::void_type&&) && (this=0x7fffffffc550,
f=@0xdec068: 0x7fffee67420b <phylanx::bindings::init_hpx_runtime(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&)>)
at /usr/local/include/pybind11/cast.h:2032
The only scenario I could think of for this to happen would be that HPX finds the same component module twice (Release/Debug?) At the point of failure, could you ask gdb for the list of loaded modules, please?
As suspected, this has turned out to be an issue happening when both, a release and a debug version are installed in the same place.