Actions
Bug #54795
closedcrash: ceph::buffer::ptr::ptr(ceph::buffer::ptr const&)
Status:
Duplicate
Priority:
Normal
Assignee:
-
Target version:
-
% Done:
0%
Source:
Telemetry
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
0a7d467d0043aa85545d3315556126756cb87ebf21f95eaeec51a848da54e35d
Crash signature (v2):
Description
Sanitized backtrace:
ceph::buffer::ptr::ptr(ceph::buffer::ptr const&) ceph::buffer::ptr_node::cloner::operator()(ceph::buffer::ptr_node const&) std::_Rb_tree<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list>, std::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list> > >::operator=(std::_Rb_tree<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list>, std::_Select1st<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list> >, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list> > > const&) ObjectCache::get(DoutPrefixProvider const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ObjectCacheInfo&, unsigned int, rgw_cache_entry_info*) RGWSI_SysObj_Cache::read(DoutPrefixProvider const*, RGWSysObjectCtxBase&, RGWSI_SysObj_Obj_GetObjState&, RGWObjVersionTracker*, rgw_raw_obj const&, ceph::buffer::list*, long, long, std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::list, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list> > >*, bool, rgw_cache_entry_info*, boost::optional<obj_version>, optional_yield) RGWSI_SysObj::Obj::ROp::read(DoutPrefixProvider const*, long, long, ceph::buffer::list*, optional_yield) rgw_get_system_obj(RGWSysObjectCtx&, rgw_pool const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ceph::buffer::list&, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, optional_yield, DoutPrefixProvider const*, std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::list, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list> > >*, rgw_cache_entry_info*, boost::optional<obj_version>) RGWSI_MetaBackend_SObj::get_entry(RGWSI_MetaBackend::Context*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWSI_MetaBackend::GetParams&, RGWObjVersionTracker*, optional_yield, DoutPrefixProvider const*) RGWSI_User_RADOS::read_user_info(RGWSI_MetaBackend::Context*, rgw_user const&, RGWUserInfo*, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, rgw_cache_entry_info*, std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::list, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::list> > >*, optional_yield, DoutPrefixProvider const*) RGWSI_User_RADOS::get_user_info_from_index(RGWSI_MetaBackend::Context*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rgw_pool const&, RGWUserInfo*, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, optional_yield, DoutPrefixProvider const*) RGWSI_User_RADOS::get_user_info_by_access_key(RGWSI_MetaBackend::Context*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWUserInfo*, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, optional_yield, DoutPrefixProvider const*) RGWSI_MetaBackend_SObj::call(std::optional<std::variant<RGWSI_MetaBackend_CtxParams_SObj> >, std::function<int (RGWSI_MetaBackend::Context*)>) RGWSI_MetaBackend_Handler::call(std::optional<std::variant<RGWSI_MetaBackend_CtxParams_SObj> >, std::function<int (RGWSI_MetaBackend_Handler::Op*)>) RGWSI_MetaBackend_Handler::call(std::function<int (RGWSI_MetaBackend_Handler::Op*)>) RGWUserCtl::get_info_by_access_key(DoutPrefixProvider const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWUserInfo*, optional_yield, RGWUserCtl::GetParams const&) rgw_get_user_info_by_access_key(DoutPrefixProvider const*, RGWUserCtl*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWUserInfo&, optional_yield, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*) rgw::auth::s3::LocalEngine::authenticate(DoutPrefixProvider const*, std::basic_string_view<char, std::char_traits<char> > const&, std::basic_string_view<char, std::char_traits<char> > const&, std::basic_string_view<char, std::char_traits<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<basic_sstring<char, unsigned short, (unsigned short)> (ceph::common::CephContext*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)> const&, std::function<std::shared_ptr<rgw::auth::Completer> (boost::optional<std::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&)> const&, req_state const*, optional_yield) const rgw::auth::s3::AWSEngine::authenticate(DoutPrefixProvider const*, req_state const*, optional_yield) const rgw::auth::Strategy::authenticate(DoutPrefixProvider const*, req_state const*, optional_yield) const rgw::auth::Strategy::authenticate(DoutPrefixProvider const*, req_state const*, optional_yield) const rgw::auth::Strategy::apply(DoutPrefixProvider const*, rgw::auth::Strategy const&, req_state*, optional_yield) RGW_Auth_S3::authorize(DoutPrefixProvider const*, rgw::sal::RGWRadosStore*, rgw::auth::StrategyRegistry const&, req_state*, optional_yield) RGWHandler_REST_S3::authorize(DoutPrefixProvider const*, optional_yield) RGWGetObj_ObjStore_S3::verify_requester(rgw::auth::StrategyRegistry const&, optional_yield) process_request(rgw::sal::RGWRadosStore*, RGWREST*, RGWRequest*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rgw::auth::StrategyRegistry const&, RGWRestfulIO*, OpsLogSink*, optional_yield, rgw::dmclock::Scheduler*, std::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> >*, int*) make_fcontext()
Crash dump sample:
{ "backtrace": [ "/lib64/libpthread.so.0(+0x12c20) [0x7f446e8d4c20]", "(ceph::buffer::v15_2_0::ptr::ptr(ceph::buffer::v15_2_0::ptr const&)+0x1b) [0x7f4478c5e66b]", "(ceph::buffer::v15_2_0::ptr_node::cloner::operator()(ceph::buffer::v15_2_0::ptr_node const&)+0x2e) [0x7f4478c6078e]", "(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> >* 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, ceph::buffer::v15_2_0::list>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> >, 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, ceph::buffer::v15_2_0::list> > >::_M_copy<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, ceph::buffer::v15_2_0::list>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> >, 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, ceph::buffer::v15_2_0::list> > >::_Reuse_or_alloc_node>(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> > const*, std::_Rb_tree_node_base*, 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, ceph::buffer::v15_2_0::list>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> >, 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, ceph::buffer::v15_2_0::list> > >::_Reuse_or_alloc_node&)+0x4c3) [0x7f44794ec103]", "(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, ceph::buffer::v15_2_0::list>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> >, 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, ceph::buffer::v15_2_0::list> > >::operator=(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, ceph::buffer::v15_2_0::list>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, ceph::buffer::v15_2_0::list> >, 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, ceph::buffer::v15_2_0::list> > > const&)+0x93) [0x7f44794ec3b3]", "(ObjectCache::get(DoutPrefixProvider const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ObjectCacheInfo&, unsigned int, rgw_cache_entry_info*)+0x1481) [0x7f4479654471]", "(RGWSI_SysObj_Cache::read(DoutPrefixProvider const*, RGWSysObjectCtxBase&, RGWSI_SysObj_Obj_GetObjState&, RGWObjVersionTracker*, rgw_raw_obj const&, ceph::buffer::v15_2_0::list*, long, long, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, 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, ceph::buffer::v15_2_0::list> > >*, bool, rgw_cache_entry_info*, boost::optional<obj_version>, optional_yield)+0x359) [0x7f4479ac4279]", "(RGWSI_SysObj::Obj::ROp::read(DoutPrefixProvider const*, long, long, ceph::buffer::v15_2_0::list*, optional_yield)+0xd1) [0x7f44795c3bd1]", "(rgw_get_system_obj(RGWSysObjectCtx&, rgw_pool const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ceph::buffer::v15_2_0::list&, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, optional_yield, DoutPrefixProvider const*, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, 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, ceph::buffer::v15_2_0::list> > >*, rgw_cache_entry_info*, boost::optional<obj_version>)+0x1d6) [0x7f44799905c6]", "(RGWSI_MetaBackend_SObj::get_entry(RGWSI_MetaBackend::Context*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWSI_MetaBackend::GetParams&, RGWObjVersionTracker*, optional_yield, DoutPrefixProvider const*)+0xf0) [0x7f4479ab34a0]", "(RGWSI_User_RADOS::read_user_info(RGWSI_MetaBackend::Context*, rgw_user const&, RGWUserInfo*, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, rgw_cache_entry_info*, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, ceph::buffer::v15_2_0::list, 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, ceph::buffer::v15_2_0::list> > >*, optional_yield, DoutPrefixProvider const*)+0x31a) [0x7f4479accb2a]", "(RGWSI_User_RADOS::get_user_info_from_index(RGWSI_MetaBackend::Context*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rgw_pool const&, RGWUserInfo*, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, optional_yield, DoutPrefixProvider const*)+0xca4) [0x7f4479acf5c4]", "(RGWSI_User_RADOS::get_user_info_by_access_key(RGWSI_MetaBackend::Context*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWUserInfo*, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, optional_yield, DoutPrefixProvider const*)+0x56) [0x7f4479acfa16]", "/lib64/libradosgw.so.2(+0xa15376) [0x7f4479999376]", "/lib64/libradosgw.so.2(+0xb2c85e) [0x7f4479ab085e]", "(RGWSI_MetaBackend_SObj::call(std::optional<std::variant<RGWSI_MetaBackend_CtxParams_SObj> >, std::function<int (RGWSI_MetaBackend::Context*)>)+0x9e) [0x7f4479ab3dbe]", "(RGWSI_MetaBackend_Handler::call(std::optional<std::variant<RGWSI_MetaBackend_CtxParams_SObj> >, std::function<int (RGWSI_MetaBackend_Handler::Op*)>)+0x5f) [0x7f4479ab068f]", "(RGWSI_MetaBackend_Handler::call(std::function<int (RGWSI_MetaBackend_Handler::Op*)>)+0x78) [0x7f44799a8c18]", "(RGWUserCtl::get_info_by_access_key(DoutPrefixProvider const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWUserInfo*, optional_yield, RGWUserCtl::GetParams const&)+0xa7) [0x7f447999a9e7]", "(rgw_get_user_info_by_access_key(DoutPrefixProvider const*, RGWUserCtl*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWUserInfo&, optional_yield, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*)+0x52) [0x7f447999aa92]", "(rgw::auth::s3::LocalEngine::authenticate(DoutPrefixProvider const*, std::basic_string_view<char, std::char_traits<char> > const&, std::basic_string_view<char, std::char_traits<char> > const&, std::basic_string_view<char, std::char_traits<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::function<basic_sstring<char, unsigned short, (unsigned short)65> (ceph::common::CephContext*, 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&)> const&, std::function<std::shared_ptr<rgw::auth::Completer> (boost::optional<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&)> const&, req_state const*, optional_yield) const+0xc7) [0x7f44799483f7]", "(rgw::auth::s3::AWSEngine::authenticate(DoutPrefixProvider const*, req_state const*, optional_yield) const+0x13f) [0x7f447991f8ff]", "(rgw::auth::Strategy::authenticate(DoutPrefixProvider const*, req_state const*, optional_yield) const+0x263) [0x7f44795fcaf3]", "(rgw::auth::Strategy::authenticate(DoutPrefixProvider const*, req_state const*, optional_yield) const+0x263) [0x7f44795fcaf3]", "(rgw::auth::Strategy::apply(DoutPrefixProvider const*, rgw::auth::Strategy const&, req_state*, optional_yield)+0x46) [0x7f44795fd5b6]", "(RGW_Auth_S3::authorize(DoutPrefixProvider const*, rgw::sal::RGWRadosStore*, rgw::auth::StrategyRegistry const&, req_state*, optional_yield)+0xa1) [0x7f4479943331]", "(RGWHandler_REST_S3::authorize(DoutPrefixProvider const*, optional_yield)+0x66) [0x7f44799435a6]", "(RGWGetObj_ObjStore_S3::verify_requester(rgw::auth::StrategyRegistry const&, optional_yield)+0x42) [0x7f44799373d2]", "(process_request(rgw::sal::RGWRadosStore*, RGWREST*, RGWRequest*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, rgw::auth::StrategyRegistry const&, RGWRestfulIO*, OpsLogSink*, optional_yield, rgw::dmclock::Scheduler*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >*, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> >*, int*)+0x12a9) [0x7f44794e4839]", "/lib64/libradosgw.so.2(+0x4b1b63) [0x7f4479435b63]", "/lib64/libradosgw.so.2(+0x4b3604) [0x7f4479437604]", "/lib64/libradosgw.so.2(+0x4b386e) [0x7f447943786e]", "make_fcontext()" ], "ceph_version": "16.2.7", "crash_id": "2022-01-23T08:44:52.258277Z_bd19dc29-ab0b-4cd0-bd7b-f579a8c54ce8", "entity_name": "client.bddff24ba37803fcacfd310cb3f37f2ddb6ec566", "os_id": "centos", "os_name": "CentOS Linux", "os_version": "8", "os_version_id": "8", "process_name": "radosgw", "stack_sig": "0a7d467d0043aa85545d3315556126756cb87ebf21f95eaeec51a848da54e35d", "timestamp": "2022-01-23T08:44:52.258277Z", "utsname_machine": "x86_64", "utsname_release": "5.4.0-91-generic", "utsname_sysname": "Linux", "utsname_version": "#102-Ubuntu SMP Fri Nov 5 16:31:28 UTC 2021" }
Actions