Actions
Bug #54748
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):
032f6b38c9ea61dc9a60bd5a45a7a7e5697443e8794bbce1eab720a3c4e8cfce
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::raw_stat(DoutPrefixProvider const*, rgw_raw_obj const&, unsigned long*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, unsigned 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> > >*, ceph::buffer::list*, RGWObjVersionTracker*, optional_yield) RGWSI_SysObj_Core::get_system_obj_state_impl(RGWSysObjectCtxBase*, rgw_raw_obj const&, RGWSysObjState**, RGWObjVersionTracker*, optional_yield, DoutPrefixProvider const*) RGWSI_SysObj_Core::get_system_obj_state(RGWSysObjectCtxBase*, rgw_raw_obj const&, RGWSysObjState**, RGWObjVersionTracker*, optional_yield, DoutPrefixProvider const*) RGWSI_SysObj_Core::stat(RGWSysObjectCtxBase&, RGWSI_SysObj_Obj_GetObjState&, rgw_raw_obj 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> > >*, bool, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, unsigned long*, RGWObjVersionTracker*, optional_yield, DoutPrefixProvider const*) RGWSI_SysObj::Obj::ROp::stat(optional_yield, DoutPrefixProvider const*) 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_Bucket_SObj::read_bucket_entrypoint_info(ptr_wrapper<RGWSI_MetaBackend::Context, 3>&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWBucketEntryPoint*, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, 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*, rgw_cache_entry_info*, boost::optional<obj_version>) 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*)>) RGWBucketCtl::read_bucket_entrypoint_info(rgw_bucket const&, RGWBucketEntryPoint*, optional_yield, DoutPrefixProvider const*, RGWBucketCtl::Bucket::GetParams const&) RGWBucketCtl::read_bucket_info(rgw_bucket const&, RGWBucketInfo*, optional_yield, DoutPrefixProvider const*, RGWBucketCtl::BucketInstance::GetParams const&, RGWObjVersionTracker*) rgw::sal::RGWRadosBucket::get_bucket_info(DoutPrefixProvider const*, optional_yield) rgw::sal::RGWRadosStore::get_bucket(DoutPrefixProvider const*, rgw::sal::RGWUser*, rgw_bucket const&, std::unique_ptr<rgw::sal::RGWBucket, std::default_delete<rgw::sal::RGWBucket> >*, optional_yield) rgw_build_bucket_policies(DoutPrefixProvider const*, rgw::sal::RGWRadosStore*, req_state*, optional_yield) RGWHandler::do_init_permissions(DoutPrefixProvider const*, optional_yield) RGWHandler_REST::init_permissions(RGWOp*, optional_yield) rgw_process_authenticated(RGWHandler_REST*, RGWOp*&, RGWRequest*, req_state*, optional_yield, bool) 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) [0x7f1e61e76c20]", "(ceph::buffer::v15_2_0::ptr::ptr(ceph::buffer::v15_2_0::ptr const&)+0x1b) [0x7f1e6c20a66b]", "(ceph::buffer::v15_2_0::ptr_node::cloner::operator()(ceph::buffer::v15_2_0::ptr_node const&)+0x2e) [0x7f1e6c20c78e]", "(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) [0x7f1e6ca98103]", "(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) [0x7f1e6ca983b3]", "(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) [0x7f1e6cc00471]", "(RGWSI_SysObj_Cache::raw_stat(DoutPrefixProvider const*, rgw_raw_obj const&, unsigned long*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, unsigned 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> > >*, ceph::buffer::v15_2_0::list*, RGWObjVersionTracker*, optional_yield)+0x21d) [0x7f1e6d070add]", "(RGWSI_SysObj_Core::get_system_obj_state_impl(RGWSysObjectCtxBase*, rgw_raw_obj const&, RGWSysObjState**, RGWObjVersionTracker*, optional_yield, DoutPrefixProvider const*)+0x5a7) [0x7f1e6cb72407]", "(RGWSI_SysObj_Core::get_system_obj_state(RGWSysObjectCtxBase*, rgw_raw_obj const&, RGWSysObjState**, RGWObjVersionTracker*, optional_yield, DoutPrefixProvider const*)+0x57) [0x7f1e6cb72a77]", "(RGWSI_SysObj_Core::stat(RGWSysObjectCtxBase&, RGWSI_SysObj_Obj_GetObjState&, rgw_raw_obj 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> > >*, bool, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, unsigned long*, RGWObjVersionTracker*, optional_yield, DoutPrefixProvider const*)+0x7e) [0x7f1e6cb72b0e]", "(RGWSI_SysObj::Obj::ROp::stat(optional_yield, DoutPrefixProvider const*)+0x65) [0x7f1e6cb6f055]", "(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>)+0x166) [0x7f1e6cf3c556]", "(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) [0x7f1e6d05f4a0]", "(RGWSI_Bucket_SObj::read_bucket_entrypoint_info(ptr_wrapper<RGWSI_MetaBackend::Context, 3>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, RGWBucketEntryPoint*, RGWObjVersionTracker*, std::chrono::time_point<ceph::real_clock, std::chrono::duration<unsigned long, std::ratio<1l, 1000000000l> > >*, 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*, rgw_cache_entry_info*, boost::optional<obj_version>)+0x155) [0x7f1e6d041165]", "/lib64/libradosgw.so.2(+0x6934d5) [0x7f1e6cbc34d5]", "(std::_Function_handler<int (RGWSI_MetaBackend_Handler::Op*), RGWBucketMetadataHandler::call(std::optional<std::variant<RGWSI_MetaBackend_CtxParams_SObj> >, std::function<int (ptr_wrapper<RGWSI_MetaBackend::Context, 3>&)>)::{lambda(RGWSI_MetaBackend_Handler::Op*)#1}>::_M_invoke(std::_Any_data const&, RGWSI_MetaBackend_Handler::Op*&&)+0x36) [0x7f1e6cbdcff6]", "/lib64/libradosgw.so.2(+0xb2c85e) [0x7f1e6d05c85e]", "(RGWSI_MetaBackend_SObj::call(std::optional<std::variant<RGWSI_MetaBackend_CtxParams_SObj> >, std::function<int (RGWSI_MetaBackend::Context*)>)+0x180) [0x7f1e6d05fea0]", "(RGWSI_MetaBackend_Handler::call(std::optional<std::variant<RGWSI_MetaBackend_CtxParams_SObj> >, std::function<int (RGWSI_MetaBackend_Handler::Op*)>)+0x5f) [0x7f1e6d05c68f]", "(RGWBucketCtl::read_bucket_entrypoint_info(rgw_bucket const&, RGWBucketEntryPoint*, optional_yield, DoutPrefixProvider const*, RGWBucketCtl::Bucket::GetParams const&)+0x104) [0x7f1e6cbc27f4]", "(RGWBucketCtl::read_bucket_info(rgw_bucket const&, RGWBucketInfo*, optional_yield, DoutPrefixProvider const*, RGWBucketCtl::BucketInstance::GetParams const&, RGWObjVersionTracker*)+0x10a) [0x7f1e6cbc483a]", "(rgw::sal::RGWRadosBucket::get_bucket_info(DoutPrefixProvider const*, optional_yield)+0x13c) [0x7f1e6cf2d85c]", "(rgw::sal::RGWRadosStore::get_bucket(DoutPrefixProvider const*, rgw::sal::RGWUser*, rgw_bucket const&, std::unique_ptr<rgw::sal::RGWBucket, std::default_delete<rgw::sal::RGWBucket> >*, optional_yield)+0x3ff) [0x7f1e6cf2c26f]", "(rgw_build_bucket_policies(DoutPrefixProvider const*, rgw::sal::RGWRadosStore*, req_state*, optional_yield)+0xb8f) [0x7f1e6ce09f7f]", "(RGWHandler::do_init_permissions(DoutPrefixProvider const*, optional_yield)+0x3e) [0x7f1e6ce0b05e]", "(RGWHandler_REST::init_permissions(RGWOp*, optional_yield)+0x19f) [0x7f1e6cea54ef]", "(rgw_process_authenticated(RGWHandler_REST*, RGWOp*&, RGWRequest*, req_state*, optional_yield, bool)+0x1ac) [0x7f1e6ca8d5fc]", "(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*)+0x2891) [0x7f1e6ca91e21]", "/lib64/libradosgw.so.2(+0x4b1b63) [0x7f1e6c9e1b63]", "/lib64/libradosgw.so.2(+0x4b3604) [0x7f1e6c9e3604]", "/lib64/libradosgw.so.2(+0x4b386e) [0x7f1e6c9e386e]", "make_fcontext()" ], "ceph_version": "16.2.7", "crash_id": "2022-03-16T19:00:45.008004Z_0a422677-d696-4557-9914-3252220571a6", "entity_name": "client.347ac0c88fb6472a5e74d2afcd8246509b974553", "os_id": "centos", "os_name": "CentOS Stream", "os_version": "8", "os_version_id": "8", "process_name": "radosgw", "stack_sig": "032f6b38c9ea61dc9a60bd5a45a7a7e5697443e8794bbce1eab720a3c4e8cfce", "timestamp": "2022-03-16T19:00:45.008004Z", "utsname_machine": "x86_64", "utsname_release": "5.4.0-104-generic", "utsname_sysname": "Linux", "utsname_version": "#118-Ubuntu SMP Wed Mar 2 19:02:41 UTC 2022" }
Updated by Telemetry Bot about 2 years ago
Updated by Casey Bodley about 2 years ago
- Is duplicate of Bug #51927: crash: RGWSI_MetaBackend_SObj added
Actions