Project

General

Profile

Actions

Bug #53612

closed

seastore crash due to out-dated rewritten extent access

Added by Xuehan Xu over 2 years ago. Updated almost 2 years ago.

Status:
Resolved
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

ERROR 2021-12-15 13:22:38,285 [shard 0] seastore - Cache::prepare_record(0x300007a60600): record is empty!
ERROR 2021-12-15 13:22:38,306 [shard 0] seastore - Cache::prepare_record(0x300007a60600): record is empty!
ERROR 2021-12-15 13:22:38,327 [shard 0] seastore - Cache::prepare_record(0x300007a60600): record is empty!
ERROR 2021-12-15 13:22:38,348 [shard 0] seastore - Cache::prepare_record(0x300007a60600): record is empty!
ERROR 2021-12-15 13:22:38,368 [shard 0] seastore - Cache::prepare_record(0x300007a60600): record is empty!
ERROR 2021-12-15 13:22:38,389 [shard 0] seastore - Cache::prepare_record(0x300007a60400): record is empty!
ERROR 2021-12-15 13:22:38,410 [shard 0] seastore - Cache::prepare_record(0x300007a60400): record is empty!
ERROR 2021-12-15 13:22:38,641 [shard 0] seastore - Cache::prepare_record(0x300007a60400): record is empty!
ERROR 2021-12-15 13:22:38,661 [shard 0] seastore - Cache::prepare_record(0x300007a60400): record is empty!
ERROR 2021-12-15 13:22:38,702 [shard 0] seastore - Cache::prepare_record(0x300007a60400): record is empty!
INFO 2021-12-15 13:22:38,702 [shard 0] seastore - mark empty: [0,733], empty_segments 809, opened_segments 7, should_block_on_gc false, projected_avail_ratio 0.5078858947753906, projected_reclaim_ratio 0.7998818028109971
ERROR 2021-12-15 13:22:38,725 [shard 0] seastore - Cache::prepare_record(0x300007a60600): record is empty!
ERROR 2021-12-15 13:22:38,768 [shard 0] seastore - Cache::prepare_record(0x300007a60400): record is empty!
ERROR 2021-12-15 13:22:38,817 [shard 0] seastore - Cache::prepare_record(0x3000048a6000): record is empty!
ERROR 2021-12-15 13:22:38,973 [shard 0] seastore - Cache::prepare_record(0x300001603000): record is empty!
ERROR 2021-12-15 13:22:39,380 [shard 0] seastore - BlockSegmentManager::read: read on invalid segment [0,733] state 0
ERROR 2021-12-15 13:22:39,380 [shard 0] none - ../src/crimson/common/errorator.h:1162 : In function 'void crimson::ct_error::assert_all::operator()(ErrorT&&) [with ErrorT = const crimson::unthrowable_wrapper<const std::error_code&, ((const std::error_code&)(& crimson::ec<std::errc::no_such_file_or_directory>))>&]', abort(s)
abort() called
Aborting on shard 0.
Backtrace:
0# gsignal in /lib64/libc.so.6
1# abort in /lib64/libc.so.6
2# ceph::__ceph_abort(char const*, int, char const*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > constx%x
) at /home/xuxuehan/src/ceph/build/../src/crimson/common/assert.cc:59
3# void crimson::ct_error::assert_all::operator()<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)2> > const&>(crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)2> > const&) at /home/xuxuehan/src/ceph/build/../src/crimson/common/errorator.h:1164
4# ZZN7crimsonL8composerINS_9erroratorIJNS_19unthrowable_wrapperIRKSt10error_codeL_ZNS_2ecILSt4errc5EEEEEEEE12pass_furtherEJNS_8ct_error10assert_allEEEEDaOT_DpOT0_ENUlDpOT_E_clIJRKNS2_IS5_L_ZNS6_ILS7_2EEEEEEEEEDcSK.constprop.0 at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/invoke.h:60
5# ZN7crimson9erroratorIJNS_19unthrowable_wrapperIRKSt10error_codeL_ZNS_2ecILSt4errc5EEEEEENS1_IS4_L_ZNS5_ILS6_22EEEEEENS1_IS4_L_ZNS5_ILS6_2EEEEEENS1_IS4_L_ZNS5_ILS6_34EEEEEEEE7_futureINS_23errorated_future_markerIvEEE24_safe_then_handle_errorsINS0_IJS7_EE8futurizeINSH_7_futureINSD_IN5boost13intrusive_ptrINS_2os8seastore11lba_manager5btree11LBALeafNodeEEEEEEEEEN7seastar6futureIvEEZNS_L8composerINSH_12pass_furtherEJNS_8ct_error10assert_allEEEEDaOT_DpOT0_EUlDpOT_E_EEDaOT0_OT1 at /opt/rh/gcc-toolset-9/root/usr/include/c++/9/bits/invoke.h:60
6# crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)5> > >::_future<crimson::errorated_future_marker<boost::intrusive_ptr<crimson::os::seastore::lba_manager::btree::LBALeafNode> > > crimson::os::seastore::Cache::read_extent<crimson::os::seastore::lba_manager::btree::LBALeafNode>(boost::intrusive_ptr<crimson::os::seastore::lba_manager::btree::LBALeafNode>&&) at /home/xuxuehan/src/ceph/build/../src/crimson/common/errorator.h:578
7# crimson::os::seastore::lba_manager::btree::LBABtree::get_leaf_node(crimson::os::seastore::lba_manager::btree::op_context_t, crimson::os::seastore::paddr_t, unsigned long, unsigned long) at /home/xuxuehan/src/ceph/build/boost/include/boost/smart_ptr/intrusive_ptr.hpp:98
8# auto crimson::repeat<crimson::interruptible::interruptor<crimson::os::seastore::TransactionConflictCondition>::repeat<crimson::os::seastore::lba_manager::btree::LBABtree::lookup_depth_range<crimson::os::seastore::lba_manager::btree::LBABtree::lower_bound(crimson::os::seastore::lba_manager::btree::op_context_t, unsigned long, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*) const::{lambda(crimson::os::seastore::lba_manager::btree::LBAInternalNode const&)#1}, crimson::os::seastore::lba_manager::btree::LBABtree::lower_bound(crimson::os::seastore::lba_manager::btree::op_context_t, unsigned long, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*) const::{lambda(crimson::os::seastore::lba_manager::btree::LBALeafNode const&)#2}>(crimson::os::seastore::lba_manager::btree::op_context_t, crimson::os::seastore::lba_manager::btree::LBABtree::iterator&, unsigned int, unsigned int, crimson::os::seastore::lba_manager::btree::LBABtree::lower_bound(crimson::os::seastore::lba_manager::btree::op_context_t, unsigned long, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*) const::{lambda(crimson::os::seastore::lba_manager::btree::LBAInternalNode const&)#1}&, crimson::os::seastore::lba_manager::btree::LBABtree::lower_bound(crimson::os::seastore::lba_manager::btree::op_context_t, unsigned long, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*) const::{lambda(crimson::os::seastore::lba_manager::btree::LBALeafNode const&)#2}&, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*)::{lambda(crimson::os::seastore::lba_manager::btree::LBABtree::iterator&)#1}::operator()<unsigned int>(crimson::os::seastore::lba_manager::btree::LBABtree::iterator&) const::{lambda()#1}, {lambda(crimson::os::seastore::lba_manager::btree::LBALeafNode const&)#2}<crimson::os::seastore::TransactionConflictCondition, crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)5> ><crimson::errorator<crimson::unthrowable_wrapper<std::error_code const&, crimson::ec<(std::errc)5> > ><seastar::bool_class<{lambda(crimson::os::seastore::lba_manager::btree::LBABtree::iterator&)#1}::stop_iteration_tag> > > >, 0>(crimson::os::seastore::lba_manager::btree::LBABtree::iterator&&)::{lambda()#1}>(crimson::os::seastore::lba_manager::btree::LBABtree::iterator) at /home/xuxuehan/src/ceph/build/../src/crimson/os/seastore/lba_manager/btree/lba_btree.h:534
9# auto seastar::internal::do_with_impl<unsigned int&, crimson::os::seastore::lba_manager::btree::LBABtree::lookup_depth_range<crimson::os::seastore::lba_manager::btree::LBABtree::lower_bound(crimson::os::seastore::lba_manager::btree::op_context_t, unsigned long, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*) const::{lambda(crimson::os::seastore::lba_manager::btree::LBAInternalNode const&)#1}, crimson::os::seastore::lba_manager::btree::LBABtree::lower_bound(crimson::os::seastore::lba_manager::btree::op_context_t, unsigned long, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*) const::{lambda(crimson::os::seastore::lba_manager::btree::LBALeafNode const&)#2}>(crimson::os::seastore::lba_manager::btree::op_context_t, crimson::os::seastore::lba_manager::btree::LBABtree::iterator&, unsigned int, unsigned int, crimson::os::seastore::lba_manager::btree::LBABtree::lower_bound(crimson::os::seastore::lba_manager::btree::op_context_t, unsigned long, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*) const::{lambda(crimson::os::seastore::lba_manager::btree::LBAInternalNode const&)#1}&, crimson::os::seastore::lba_manager::btree::LBABtree::lower_bound(crimson::os::seastore::lba_manager::btree::op_context_t, unsigned long, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*) const::{lambda(crimson::os::seastore::lba_manager::btree::LBALeafNode const&)#2}&, std::function<void (crimson::os::seastore::paddr_t, unsigned int)>*)::{lambda(crimson::os::seastore::lba_manager::btree::LBABtree::iterator&)#1}>(crimson::os::seastore::lba_ma

Actions #1

Updated by Xuehan Xu over 2 years ago

  • Assignee set to Xuehan Xu
Actions #2

Updated by Xuehan Xu over 2 years ago

  • Pull request ID set to 44361
Actions #3

Updated by Xuehan Xu almost 2 years ago

  • Status changed from New to Resolved
Actions

Also available in: Atom PDF