observing crash during find_or_construct

(this=<optimized out>, key2=..., nonkey1=...) at /staging/cu/x86/include/boost/intrusive/detail/tree_value_compare.hpp:157 #2 operator()<boost::interprocess::ipcdetail::intrusive_compare_key<char>, boost::interprocess::offset_ptr<boost::intrusive::compact_rbtree_node<boost::interprocess::offset_ptr<void> , long int, long unsigned int, 0ul> > (this=<optimized out>, t2=..., t1=...) at /staging/cu/x86/include/boost/intrusive/detail/key_nodeptr_comp.hpp:106 #3 insert_unique_check<boost::interprocess::ipcdetail::intrusive_compare_key<char>, boost::intrusive::detail::key_nodeptr_comp<boost::interprocess::iset_index<boost::interprocess::ipcdetail::index_config<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family> > ::intrusive_key_value_less, boost::intrusive::bhtraits<boost::interprocess::ipcdetail::intrusive_value_type_impl<boost::intrusive::generic_hook<(boost::intrusive::algo_types)5, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void>,
::intrusive_key_value_less> (this=this@entry=0x7f035d1dc0a0, key=..., comp=..., commit_data=...) at /staging/cu/x86/include/boost/intrusive/bstree.hpp:499 #5 0x0000000001d8c7a1 in insert_check<boost::interprocess::ipcdetail::intrusive_compare_key<char>, boost::interprocess::iset_index<boost::interprocess::ipcdetail::index_config<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family> > ::intrusive_key_value_less> (commit_data=..., key=...,
(this=<optimized out>, key2=..., nonkey1=...) at /staging/cu/x86/include/boost/intrusive/detail/tree_value_compare.hpp:157 No locals. #2 operator()<boost::interprocess::ipcdetail::intrusive_compare_key<char>, boost::interprocess::offset_ptr<boost::intrusive::compact_rbtree_node<boost::interprocess::offset_ptr<void> , long int, long unsigned int, 0ul> > (this=<optimized out>, t2=..., t1=...) at /staging/cu/x86/include/boost/intrusive/detail/key_nodeptr_comp.hpp:106 No locals. #3 insert_unique_check<boost::interprocess::ipcdetail::intrusive_compare_key<char>, boost::intrusive::detail::key_nodeptr_comp<boost::interprocess::iset_index<boost::interprocess::ipcdetail::index_config<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family> > ::intrusive_key_value_less, boost::intrusive::bhtraits<boost::interprocess::ipcdetail::intrusive_value_type_impl<boost::intrusive::generic_hook<(boost::intrusive::algo_types)5, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void>,
::intrusive_key_value_less> (this=this@entry=0x7f035d1dc0a0, key=..., comp=..., commit_data=...) at /staging/cu/x86/include/boost/intrusive/bstree.hpp:499 ret = { first = { internal = { m_offset = 769371910, alignment_helper = { dummy = "\006\257\333-\000\000\000" } } }, second = true } #5 0x0000000001d8c7a1 in insert_check<boost::interprocess::ipcdetail::intrusive_compare_key<char>, boost::interprocess::iset_index<boost::interprocess::ipcdetail::index_config<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family> > ::intrusive_key_value_less> (commit_data=..., key=...,
Hi all, Now i have moved most of the containers into shared memory, i am Observing crash at random places while calling find_or_construct api, trace as below, what might be reasons for this behaviour and how to get more debug info in these type of errors. #0 operator() (this=<optimized out>, b=..., i=...) at /staging/cu/x86/include/boost/interprocess/indexes/iset_index.hpp:94 #1 operator()<boost::interprocess::ipcdetail::intrusive_compare_key<char> true>, boost::intrusive::dft_tag, (boost::intrusive::link_mode_type)1, (boost::intrusive::base_hook_type)3>, char, unsigned long>, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void>, true>, (boost::intrusive::link_mode_type)1, boost::intrusive::dft_tag, 3u>, boost::move_detail::identity<boost::interprocess::ipcdetail::intrusive_value_type_impl<boost::intrusive::generic_hook<(boost::intrusive::algo_types)5, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void>, true>, boost::intrusive::dft_tag, (boost::intrusive::link_mode_type)1, (boost::intrusive::base_hook_type)3>, char, unsigned long> > > > (pdepth=0x0, commit_data=..., comp=..., key=..., header=...) at /staging/cu/x86/include/boost/intrusive/bstree_algorithms.hpp:1014 #4 boost::intrusive::bstbase2<boost::intrusive::bhtraits<boost::interprocess::ipcdetail::intrusive_value_type_impl<boost::intrusive::generic_hook<(boost::intrusive::algo_types)5, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void, long, unsigned long, 0ul>, true>, boost::intrusive::dft_tag, (boost::intrusive::link_mode_type)1, (boost::intrusive::base_hook_type)3>, char, unsigned long>, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void, long, unsigned long, 0ul>, true>, (boost::intrusive::link_mode_type)1, boost::intrusive::dft_tag, 3u>, void, void, (boost::intrusive::algo_types)5, void>::insert_unique_check<boost::interprocess::ipcdetail::intrusive_compare_key<char>, boost::interprocess::iset_index<boost::interprocess::ipcdetail::index_config<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long, unsigned long, 0ul>, 0ul> > this=0x7f035d1dc098, comp=...) at /staging/cu/x86/include/boost/intrusive/set.hpp:232 #6 insert_check (commit_data=..., key=..., this=0x7f035d1dc098) at /staging/cu/x86/include/boost/interprocess/indexes/iset_index.hpp:138 #7 priv_generic_named_construct<char> (type=1 '\001', is_intrusive=..., index=..., table=..., dothrow=true, try2find=true, num=1, name=0x7f03504a1cd0 "is_xn_setup_failed_alarm_raised", this=<optimized out>, this=<optimized out>) at /staging/cu/x86/include/boost/interprocess/segment_manager.hpp:1096 #8 priv_generic_construct (table=..., dothrow=true, try2find=true, num=1, name=0x7f03504a1cd0 "is_xn_setup_failed_alarm_raised", this=0x7f035d1dc010) at /staging/cu/x86/include/boost/interprocess/segment_manager.hpp:760 #9 generic_construct<bool> (table=..., dothrow=true, try2find=true, num=1, name=0x7f03504a1cd0 "is_xn_setup_failed_alarm_raised", this=0x7f035d1dc010) at /staging/cu/x86/include/boost/interprocess/segment_manager.hpp:704 #10 boost::interprocess::ipcdetail::named_proxy<boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long, unsigned long, 0ul>, 0ul>, boost::interprocess::iset_index>, bool, false>::operator()<bool>(bool&&) const (this=<optimized out>) at /staging/cu/x86/include/boost/interprocess/detail/named_proxy.hpp:132 #11 0x0000000001fbb6c8 in gnb::gnb_mgr_neighbour::gnb_mgr_neighbour (this=0x7f033815fc50, segment_manager=0x7f035d1dc010, id=<optimized out>) at /../src/gnb_mgr_db_neighbour.cpp:76 #12 0x0000000002062888 in gnb::gnb_mgr_anr_nrt::add_anr_gnb_mgr_neighbour_target (this=0x7f033815a4c0, neighbour_gnb_id=108, neighbour_xnc_ip_address=..., type=0, neighbour_tac=101, amf_id=3, neighbour_plmn_id=...) at /../src/gnb_mgr_anr_nrt.cpp:1415 #13 0x0000000002325356 in gnb::gnb_mgr_amf::amf_fsm::process_downlink_ran_configuration_transfer (this=this@entry=0x7f035d1e0618, gnb_mgr_amf=gnb_mgr_amf@entry=0x7f0338109070, msg=msg@entry=0x7f0338161bd0) at /../src/gnb_mgr_db_amf.cpp:2851 #14 0x000000000235518b in gnb::gnb_mgr_amf::amf_fsm::process_amf_state_ng_setup_complete (this=<optimized out>, event=gnb::gnb_mgr_amf::EVENT_DOWNLINK_RAN_CONFIGURATION_TRANSFER, gnb_mgr_amf=0x7f0338109070, msg=0x7f0338161bd0, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>) at /../src/gnb_mgr_db_amf.cpp:3122 #15 0x0000000002362a01 in gnb::gnb_mgr_amf::amf_fsm::process_amf_fsm (this=<optimized out>, event=gnb::gnb_mgr_amf::EVENT_DOWNLINK_RAN_CONFIGURATION_TRANSFER, gnb_mgr_amf=0x7f0338109070, msg=0x7f0338161bd0, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>, this=<optimized out>) at /../src/gnb_mgr_db_amf.cpp:4713 #16 0x0000000002362ee7 in gnb::gnb_mgr_amf::process_amf_current_state (this=<optimized out>, event=event@entry=gnb::gnb_mgr_amf::EVENT_DOWNLINK_RAN_CONFIGURATION_TRANSFER, gnb_mgr_amf=<optimized out>, msg=msg@entry=0x7f0338161bd0, this=<optimized out>) at /../src/gnb_mgr_db_amf.cpp:4820 #17 0x00000000021906b0 in gnb::gnb_mgr_ng_msg_proc::process_downlink_ran_configuration_transfer (this=<optimized out>, sctp_common_msg_rx_ind_info=sctp_common_msg_rx_ind_info@entry=0x7f033c040430) at /../src/gnb_mgr_ng_msg.cpp:1456 #18 0x00000000021a20c9 in gnb::gnb_mgr_ng_msg_proc::process_ng_msg (this=this@entry=0x7f03504a4640, sctp_common_msg_rx_ind_info=sctp_common_msg_rx_ind_info@entry=0x7f033c040430) at /../src/gnb_mgr_ng_msg.cpp:2199 #19 0x00000000024d991c in gnb::gnb_mgr_msg_hdlr::process_sctp_common_msg_rx_ind (this=<optimized out>, sctp_common_msg_rx_ind=0x7f033c040430) at /../src/gnb_mgr_msg_hdlr.cpp:3807 #20 0x0000000001db5ea2 in gnb::common_cntrl_thread::process_message (this=0xd825da0, message=0x7f033c120d50) at ../src/common_cntrl_thread.cpp:2418 #21 0x0000000001ceaeec in ngp::comm_thread::run (this=0xd825da0) at /include/ngp_comm_thread.h:220 #22 0x0000000002758e07 in thread_entry_function (param=0xd825da0) at /thread/build/../src/ngp_sys_thread.cpp:111 #23 ngp::thread_start (param=0xd825da0) at /thread/build/../src/ngp_sys_thread.cpp:124 #24 0x00007f036ba90ea5 in start_thread () from /lib64/libpthread.so.0 #25 0x00007f036b7b9b0d in clone () from /lib64/libc.so.6 #0 operator() (this=<optimized out>, b=..., i=...) at /staging/cu/x86/include/boost/interprocess/indexes/iset_index.hpp:94 blen = <optimized out> #1 operator()<boost::interprocess::ipcdetail::intrusive_compare_key<char> true>, boost::intrusive::dft_tag, (boost::intrusive::link_mode_type)1, (boost::intrusive::base_hook_type)3>, char, unsigned long>, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void>, true>, (boost::intrusive::link_mode_type)1, boost::intrusive::dft_tag, 3u>, boost::move_detail::identity<boost::interprocess::ipcdetail::intrusive_value_type_impl<boost::intrusive::generic_hook<(boost::intrusive::algo_types)5, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void>, true>, boost::intrusive::dft_tag, (boost::intrusive::link_mode_type)1, (boost::intrusive::base_hook_type)3>, char, unsigned long> > > > (pdepth=0x0, commit_data=..., comp=..., key=..., header=...) at /staging/cu/x86/include/boost/intrusive/bstree_algorithms.hpp:1014 depth = <optimized out> y = { internal = { m_offset = 769371974, alignment_helper = { dummy = "F\257\333-\000\000\000" } } } left_child = true not_present = <optimized out> h = { internal = { m_offset = 215197376, alignment_helper = { dummy = "\300\246\323\f\000\000\000" } } } x = { internal = { m_offset = 769371958, alignment_helper = { dummy = "6\257\333-\000\000\000" } } } prev = { internal = { m_offset = 215199488, alignment_helper = { dummy = "\000\257\323\f\000\000\000" } } } #4 boost::intrusive::bstbase2<boost::intrusive::bhtraits<boost::interprocess::ipcdetail::intrusive_value_type_impl<boost::intrusive::generic_hook<(boost::intrusive::algo_types)5, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void, long, unsigned long, 0ul>, true>, boost::intrusive::dft_tag, (boost::intrusive::link_mode_type)1, (boost::intrusive::base_hook_type)3>, char, unsigned long>, boost::intrusive::rbtree_node_traits<boost::interprocess::offset_ptr<void, long, unsigned long, 0ul>, true>, (boost::intrusive::link_mode_type)1, boost::intrusive::dft_tag, 3u>, void, void, (boost::intrusive::algo_types)5, void>::insert_unique_check<boost::interprocess::ipcdetail::intrusive_compare_key<char>, boost::interprocess::iset_index<boost::interprocess::ipcdetail::index_config<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long, unsigned long, 0ul>, 0ul> > this=0x7f035d1dc098, comp=...) at /staging/cu/x86/include/boost/intrusive/set.hpp:232 No locals. #6 insert_check (commit_data=..., key=..., this=0x7f035d1dc098) at /staging/cu/x86/include/boost/interprocess/indexes/iset_index.hpp:138 No locals. #7 priv_generic_named_construct<char> (type=1 '\001', is_intrusive=..., index=..., table=..., dothrow=true, try2find=true, num=1, name=0x7f03504a1cd0 "is_xn_setup_failed_alarm_raised", this=<optimized out>, this=<optimized out>) at /staging/cu/x86/include/boost/interprocess/segment_manager.hpp:1096 key = { mp_str = 0x7f03504a1cd0 "is_xn_setup_failed_alarm_raised", m_len = 31 } insert_ret = { first = { static stateful_value_traits = false, members_ = { nodeptr_ = { internal = { m_offset = 1, alignment_helper = { dummy = "\001\000\000\000\000\000\000" } } } } }, second = false } intrusive_hdr = <optimized out> block_info = { m_value_bytes = 1, m_num_char = 31, m_value_alignment = 1 '\001', m_alloc_type_sizeof_char = 33 '!' } commit_data = { link_left = 112, node = { internal = { m_offset = 1, alignment_helper = { dummy = "\001\000\000\000\000\000\000" } } } } hdr = <optimized out> ptr = <optimized out> name_ptr = <optimized out> it = { static stateful_value_traits = false, members_ = { nodeptr_ = { internal = { m_offset = 1, alignment_helper = { dummy = "\001\000\000\000\000\000\000" } } } } } buffer_ptr = <optimized out> v_eraser = { m_cont = @0x0, m_index_it = { static stateful_value_traits = false, members_ = { nodeptr_ = { internal = { m_offset = 0, alignment_helper = { dummy = "\000\000\000\000\000\000\000" } } } } }, m_erase = 208 } #8 priv_generic_construct (table=..., dothrow=true, try2find=true, num=1, name=0x7f03504a1cd0 "is_xn_setup_failed_alarm_raised", this=0x7f035d1dc010) at /staging/cu/x86/include/boost/interprocess/segment_manager.hpp:760 No locals. #9 generic_construct<bool> (table=..., dothrow=true, try2find=true, num=1, name=0x7f03504a1cd0 "is_xn_setup_failed_alarm_raised", this=0x7f035d1dc010) at /staging/cu/x86/include/boost/interprocess/segment_manager.hpp:704 No locals. #10 boost::interprocess::ipcdetail::named_proxy<boost::interprocess::segment_manager<char, boost::interprocess::rbtree_best_fit<boost::interprocess::mutex_family, boost::interprocess::offset_ptr<void, long, unsigned long, 0ul>, 0ul>, boost::interprocess::iset_index>, bool, false>::operator()<bool>(bool&&) const (this=<optimized out>) at /staging/cu/x86/include/boost/interprocess/detail/named_proxy.hpp:132 ctor_obj = <unknown type in /bin/gnb_cu_cp_gnb_mgr, CU 0x14204b9, DIE 0x1522041> -- Regards, Murali Kishore
participants (1)
-
Murali Kishore