Project

General

Profile

Actions

Bug #47030

closed

segault when evicting osdmap from cache

Added by Kefu Chai over 3 years ago. Updated 12 days ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Source:
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

DEBUG 2020-08-16 11:45:14,844 [shard 0] osd - log is not dirty
8.768616649s ub 106.779099407s int 16s))): start
DEBUG 2020-08-16 11:45:14,844 [shard 0] osd - peering_event(id=419, detail=PeeringEvent(from=2 pgid=3.f sent=42 requested=42 evt=epoch_sent: 42 epoch_requested: 42 MLease epoch 42 from osd.2 pg_lease(ru 9
8.768616649s ub 106.779099407s int 16s))): got map 42
DEBUG 2020-08-16 11:45:14,844 [shard 0] osd - peering_event(id=419, detail=PeeringEvent(from=2 pgid=3.f sent=42 requested=42 evt=epoch_sent: 42 epoch_requested: 42 MLease epoch 42 from osd.2 pg_lease(ru 9
8.768616649s ub 106.779099407s int 16s))): pg present
DEBUG 2020-08-16 11:45:14,844 [shard 0] osd - do_peering_event handling epoch_sent: 42 epoch_requested: 42 MLease epoch 42 from osd.2 pg_lease(ru 98.768616649s ub 106.779099407s int 16s) for pg: 3.f
DEBUG 2020-08-16 11:45:14,844 [shard 0] osd -  pg_epoch 42 pg[3.f( v 21'159 (0'0,21'159] local-lis/les=23/24 n=0 ec=14/14 lis/c=23/23 les/c/f=24/24/0 sis=23) [2,3,0] r=1 lpr=23 luod=0'0 crt=21'159 mlcod 0
'0 active proc_lease pg_lease(ru 98.768616649s ub 106.779099407s int 16s)
DEBUG 2020-08-16 11:45:14,844 [shard 0] osd -  pg_epoch 42 pg[3.f( v 21'159 (0'0,21'159] local-lis/les=23/24 n=0 ec=14/14 lis/c=23/23 les/c/f=24/24/0 sis=23) [2,3,0] r=1 lpr=23 luod=0'0 crt=21'159 mlcod 0
'0 active  no peer_clock_delta_lb -> ruub 106.752646114s
DEBUG 2020-08-16 11:45:14,844 [shard 0] osd -  pg_epoch 42 pg[3.f( v 21'159 (0'0,21'159] local-lis/les=23/24 n=0 ec=14/14 lis/c=23/23 les/c/f=24/24/0 sis=23) [2,3,0] r=1 lpr=23 luod=0'0 crt=21'159 mlcod 0
'0 active proc_lease readable_until_ub now 106.752646114s
DEBUG 2020-08-16 11:45:14,844 [shard 0] ms - [osd.3(cluster) v2:172.21.15.69:6803/18862@51968 >> osd.2 v2:172.21.15.69:6801/18861] connect to existing
DEBUG 2020-08-16 11:45:14,844 [shard 0] ms - [osd.3(cluster) v2:172.21.15.69:6803/18862@51968 >> osd.2 v2:172.21.15.69:6801/18861] --> #774 === pg_lease_ack(3.f pg_lease_ack(ruub 106.779099407s) e42/42) v
1 (134)
DEBUG 2020-08-16 11:45:14,844 [shard 0] osd - log is not dirty
DEBUG 2020-08-16 11:45:14,844 [shard 0] osd - peering_event(id=419, detail=PeeringEvent(from=2 pgid=3.f sent=42 requested=42 evt=epoch_sent: 42 epoch_requested: 42 MLease epoch 42 from osd.2 pg_lease(ru 98.768616649s ub 106.779099407s int 16s))): submitting ctx
DEBUG 2020-08-16 11:45:14,844 [shard 0] filestore - do_transaction
DEBUG 2020-08-16 11:45:14,845 [shard 0] ms - [osd.3(cluster) v2:172.21.15.69:6803/18862@51968 >> osd.2 v2:172.21.15.69:6801/18861] GOT AckFrame: seq=773
DEBUG 2020-08-16 11:45:14,845 [shard 0] osd - peering_event(id=419, detail=PeeringEvent(from=2 pgid=3.f sent=42 requested=42 evt=epoch_sent: 42 epoch_requested: 42 MLease epoch 42 from osd.2 pg_lease(ru 98.768616649s ub 106.779099407s int 16s))): complete
DEBUG 2020-08-16 11:45:14,845 [shard 0] ms - [osd.3(cluster) v2:172.21.15.69:6803/18862@51968 >> osd.2 v2:172.21.15.69:6801/18861] GOT AckFrame: seq=774
DEBUG 2020-08-16 11:45:14,889 [shard 0] ms - [osd.3(client) v2:172.21.15.69:6802/18862@58760 >> mon.0 v2:172.21.15.39:3300/0] <== #48 === osd_map(42..43 src has 1..43) v4 (41)
INFO  2020-08-16 11:45:14,889 [shard 0] osd - handle_osd_map osd_map(42..43 src has 1..43) v4
INFO  2020-08-16 11:45:14,889 [shard 0] osd - handle_osd_map epochs [42..43], i have 42, src has [1..43]
Segmentation fault on shard 0.
[Backtrace #0]
void seastar::backtrace<seastar::backtrace_buffer::append_backtrace()::{lambda(seastar::frame)#1}>(seastar::backtrace_buffer::append_backtrace()::{lambda(seastar::frame)#1}&&) at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/util/backtrace.hh:59
non-virtual thunk to std::_Nested_exception<std::runtime_error>::~_Nested_exception() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/src/core/reactor.cc:730
 (inlined by) print_with_backtrace at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/src/core/reactor.cc:751
print_with_backtrace at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/src/core/reactor.cc:758
non-virtual thunk to std::_Nested_exception<std::runtime_error>::~_Nested_exception() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/src/core/reactor.cc:3513
 (inlined by) operator() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/src/core/reactor.cc:3499
 (inlined by) _FUN at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/src/core/reactor.cc:3495
.annobin_funlockfile.c_end at funlockfile.c:?
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, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, 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, int> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >*) at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/stl_tree.h:1907
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, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, 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, int> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >*) at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/stl_tree.h:1913
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, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, 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, int> > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >*) at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/stl_tree.h:1913
std::_Sp_counted_ptr_inplace<CrushWrapper, std::allocator<CrushWrapper>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/stl_tree.h:995
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/stl_map.h:300
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crush/CrushWrapper.h:100
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/ext/new_allocator.h:153
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/alloc_traits.h:497
 (inlined by) std::_Sp_counted_ptr_inplace<CrushWrapper, std::allocator<CrushWrapper>, (__gnu_cxx::_Lock_policy)2>::_M_dispose() at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/shared_ptr_base.h:557
OSDMap::~OSDMap() at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/shared_ptr_base.h:155
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/shared_ptr_base.h:148
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/shared_ptr_base.h:730
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/shared_ptr_base.h:1169
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/shared_ptr.h:103
 (inlined by) OSDMap::~OSDMap() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/osd/OSDMap.h:350
boost::detail::sp_counted_impl_pd<OSDMap*, boost::detail::local_sp_deleter<SharedLRU<unsigned int, OSDMap>::Deleter> >::dispose() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/common/shared_lru.h:33
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/build/boost/include/boost/smart_ptr/detail/local_sp_deleter.hpp:60
 (inlined by) boost::detail::sp_counted_impl_pd<OSDMap*, boost::detail::local_sp_deleter<SharedLRU<unsigned int, OSDMap>::Deleter> >::dispose() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/build/boost/include/boost/smart_ptr/detail/sp_counted_impl.hpp:173
boost::detail::local_counted_impl_em::local_cb_destroy() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/build/boost/include/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp:112
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/build/boost/include/boost/smart_ptr/detail/sp_counted_base_std_atomic.hpp:108
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/build/boost/include/boost/smart_ptr/detail/shared_count.hpp:427
 (inlined by) boost::detail::local_counted_impl_em::local_cb_destroy() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/build/boost/include/boost/smart_ptr/detail/local_counted_base.hpp:135
non-virtual thunk to crimson::osd::OSD::update_stats() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/build/boost/include/boost/smart_ptr/detail/local_counted_base.hpp:82
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/build/boost/include/boost/smart_ptr/local_shared_ptr.hpp:133
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/stl_pair.h:208
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/stl_pair.h:208
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/ext/new_allocator.h:153
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/alloc_traits.h:497
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/hashtable_policy.h:2102
SimpleLRU<unsigned int, boost::local_shared_ptr<OSDMap>, false>::_evict() at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/hashtable.h:1886
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/hashtable.h:1912
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/hashtable.h:772
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/unordered_map.h:815
 (inlined by) SimpleLRU<unsigned int, boost::local_shared_ptr<OSDMap>, false>::_evict() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/common/simple_lru.h:139
SimpleLRU<unsigned int, boost::local_shared_ptr<OSDMap>, false>::insert(unsigned int const&, boost::local_shared_ptr<OSDMap>) at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/common/simple_lru.h:75
SharedLRU<unsigned int, OSDMap>::insert(unsigned int const&, std::unique_ptr<OSDMap, std::default_delete<OSDMap> >) at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/common/shared_lru.h:107
operator()<std::unique_ptr<OSDMap, std::default_delete<OSDMap> > > at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/osd/osd.cc:816
crimson::osd::OSD::ms_dispatch(crimson::net::Connection*, boost::intrusive_ptr<Message>) at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/invoke.h:60
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/invoke.h:96
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/tuple:1685
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/tuple:1696
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:2028
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:1568
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:1214
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:1490
 (inlined by) operator() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/osd/osd.cc:818
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:2045
crimson::osd::OSD::store_maps(ceph::os::Transaction&, unsigned int, boost::intrusive_ptr<MOSDMap>) at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:2129
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future-util.hh:611
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future-util.hh:644
 (inlined by) crimson::osd::OSD::store_maps(ceph::os::Transaction&, unsigned int, boost::intrusive_ptr<MOSDMap>) at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/osd/osd.cc:823
operator()<ceph::os::Transaction> at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/osd/osd.cc:981
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/invoke.h:60
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/invoke.h:96
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/tuple:1685
 (inlined by) ?? at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/tuple:1696
 (inlined by) do_with_impl<ceph::os::Transaction, crimson::osd::OSD::handle_osd_map(crimson::net::Connection*, Ref<MOSDMap>)::<lambda(auto:110&)> > at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/do_with.hh:106
crimson::osd::OSD::handle_osd_map(crimson::net::Connection*, boost::intrusive_ptr<MOSDMap>) at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:2045
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:2129
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/do_with.hh:141
 (inlined by) crimson::osd::OSD::handle_osd_map(crimson::net::Connection*, boost::intrusive_ptr<MOSDMap>) at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/osd/osd.cc:963
operator() at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/crimson/osd/osd.cc:602
 (inlined by) ?? at /usr/src/debug/ceph-16.0.0-4418.g27e237c.el8.x86_64/src/seastar/include/seastar/core/future.hh:2045

the test was killed before it finished

Actions #1

Updated by Matan Breizman 12 days ago

  • Status changed from New to Closed

Please re-open if still relevant.

Actions

Also available in: Atom PDF