Skip to content

Instantly share code, notes, and snippets.

@jbw976
Created February 3, 2017 20:31
Show Gist options
  • Save jbw976/3232e5ec33ddc2d0845312086595d557 to your computer and use it in GitHub Desktop.
Save jbw976/3232e5ec33ddc2d0845312086595d557 to your computer and use it in GitHub Desktop.
Direct link to failed assert: https://github.com/rook/ceph/blob/6d8d69fc8655ad89bb194de98ca99e02fc780454/src/os/bluestore/BlueStore.cc#L1046
(gdb) bt
#0 raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:58
#1 0x000000000186798c in reraise_fatal (signum=6) at /home/rook/go/src/github.com/rook/rook/ceph/src/global/signal_handler.cc:72
#2 handle_fatal_signal (signum=6) at /home/rook/go/src/github.com/rook/rook/ceph/src/global/signal_handler.cc:134
#3 <signal handler called>
#4 raise (sig=<optimized out>) at ../sysdeps/unix/sysv/linux/raise.c:58
#5 0x00000000022d7cca in abort ()
#6 0x000000000102d73b in ceph::__ceph_assert_fail (assertion=assertion@entry=0x27c9e70 "b->end() > offset", file=file@entry=0x27cae98 "/home/rook/go/src/github.com/rook/rook/ceph/src/os/bluestore/BlueStore.cc", line=line@entry=1046,
func=func@entry=0x27d0620 <BlueStore::BufferSpace::read(unsigned long, unsigned long, std::map<unsigned long, ceph::buffer::list, std::less<unsigned long>, std::allocator<std::pair<unsigned long const, ceph::buffer::list> > >&, interval_set<unsigned long>&)::__PRETTY_FUNCTION__> "void BlueStore::BufferSpace::read(uint64_t, uint64_t, BlueStore::ready_regions_t&, interval_set<long unsigned int>&)") at /home/rook/go/src/github.com/rook/rook/ceph/src/common/assert.cc:78
#7 0x0000000001a23a68 in BlueStore::BufferSpace::read (this=0x11a54958, offset=<optimized out>, offset@entry=0, length=<optimized out>, length@entry=46, res=..., res_intervals=...) at /home/rook/go/src/github.com/rook/rook/ceph/src/os/bluestore/BlueStore.cc:1046
#8 0x0000000001a453c4 in BlueStore::_do_read (this=this@entry=0xcce8000, c=c@entry=0x114e0a00, o=..., offset=offset@entry=0, length=length@entry=46, bl=..., op_flags=0) at /home/rook/go/src/github.com/rook/rook/ceph/src/os/bluestore/BlueStore.cc:5077
#9 0x0000000001a47e92 in BlueStore::read (this=0xcce8000, c_=..., oid=..., offset=offset@entry=0, length=length@entry=46, bl=..., op_flags=0, allow_eio=false) at /home/rook/go/src/github.com/rook/rook/ceph/src/os/bluestore/BlueStore.cc:4963
#10 0x00000000019cfa96 in ReplicatedBackend::objects_read_sync (this=0x1198e280, hoid=..., off=0, len=46, op_flags=0, bl=0xe7daf48) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/ReplicatedBackend.cc:307
#11 0x000000000159e621 in PrimaryLogPG::do_osd_ops (this=this@entry=0x10a33000, ctx=<optimized out>, ctx@entry=0x10ac8300, ops=...) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/PrimaryLogPG.cc:4467
#12 0x00000000015a88bf in PrimaryLogPG::prepare_transaction (this=this@entry=0x10a33000, ctx=ctx@entry=0x10ac8300) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/PrimaryLogPG.cc:6777
#13 0x00000000015a97de in PrimaryLogPG::execute_ctx (this=this@entry=0x10a33000, ctx=ctx@entry=0x10ac8300) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/PrimaryLogPG.cc:3146
#14 0x00000000015aec15 in PrimaryLogPG::do_op (this=<optimized out>, op=...) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/PrimaryLogPG.cc:2309
#15 0x000000000156a906 in PrimaryLogPG::do_request (this=0x10a33000, op=..., handle=...) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/PrimaryLogPG.cc:1650
#16 0x00000000016c0ec8 in OSD::dequeue_op (this=0xce44000, pg=..., op=..., handle=...) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/OSD.cc:9065
#17 0x00000000016c1122 in PGQueueable::RunVis::operator() (this=this@entry=0x7f19619e7dc0, op=...) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/OSD.cc:163
#18 0x00000000016e69ec in boost::detail::variant::invoke_visitor<PGQueueable::RunVis>::internal_visit<std::shared_ptr<OpRequest> > (operand=..., this=<synthetic pointer>) at /usr/x86_64-linux-gnu/include/boost/variant/variant.hpp:1046
#19 boost::detail::variant::visitation_impl_invoke_impl<boost::detail::variant::invoke_visitor<PGQueueable::RunVis>, void*, std::shared_ptr<OpRequest> > (storage=0x7f19619e7ea0, visitor=<synthetic pointer>...) at /usr/x86_64-linux-gnu/include/boost/variant/detail/visitation_impl.hpp:114
#20 boost::detail::variant::visitation_impl_invoke<boost::detail::variant::invoke_visitor<PGQueueable::RunVis>, void*, std::shared_ptr<OpRequest>, boost::variant<std::shared_ptr<OpRequest>, PGSnapTrim, PGScrub, PGRecovery>::has_fallback_type_> (internal_which=<optimized out>, t=0x0, storage=0x7f19619e7ea0, visitor=<synthetic pointer>...)
at /usr/x86_64-linux-gnu/include/boost/variant/detail/visitation_impl.hpp:157
#21 boost::detail::variant::visitation_impl<mpl_::int_<0>, boost::detail::variant::visitation_impl_step<boost::mpl::l_iter<boost::mpl::l_item<mpl_::long_<4l>, std::shared_ptr<OpRequest>, boost::mpl::l_item<mpl_::long_<3l>, PGSnapTrim, boost::mpl::l_item<mpl_::long_<2l>, PGScrub, boost::mpl::l_item<mpl_::long_<1l>, PGRecovery, boost::mpl::l_end> > > > >, boost::mpl::l_iter<boost::mpl::l_end> >, boost::detail::variant::invoke_visitor<PGQueueable::RunVis>, void*, boost::variant<std::shared_ptr<OpRequest>, PGSnapTrim, PGScrub, PGRecovery>::has_fallback_type_> (no_backup_flag=..., storage=0x7f19619e7ea0, visitor=<synthetic pointer>..., logical_which=<optimized out>, internal_which=<optimized out>)
at /usr/x86_64-linux-gnu/include/boost/variant/detail/visitation_impl.hpp:239
#22 boost::variant<std::shared_ptr<OpRequest>, PGSnapTrim, PGScrub, PGRecovery>::internal_apply_visitor_impl<boost::detail::variant::invoke_visitor<PGQueueable::RunVis>, void*> (storage=0x7f19619e7ea0, visitor=<synthetic pointer>..., logical_which=<optimized out>, internal_which=<optimized out>) at /usr/x86_64-linux-gnu/include/boost/variant/variant.hpp:2389
#23 boost::variant<std::shared_ptr<OpRequest>, PGSnapTrim, PGScrub, PGRecovery>::internal_apply_visitor<boost::detail::variant::invoke_visitor<PGQueueable::RunVis> > (visitor=<synthetic pointer>..., this=0x7f19619e7e98) at /usr/x86_64-linux-gnu/include/boost/variant/variant.hpp:2400
#24 boost::variant<std::shared_ptr<OpRequest>, PGSnapTrim, PGScrub, PGRecovery>::apply_visitor<PGQueueable::RunVis> (visitor=..., this=0x7f19619e7e98) at /usr/x86_64-linux-gnu/include/boost/variant/variant.hpp:2423
#25 boost::apply_visitor<PGQueueable::RunVis, boost::variant<std::shared_ptr<OpRequest>, PGSnapTrim, PGScrub, PGRecovery> > (visitable=..., visitor=...) at /usr/x86_64-linux-gnu/include/boost/variant/detail/apply_visitor_unary.hpp:70
#26 PGQueueable::run (handle=..., pg=..., osd=<optimized out>, this=0x7f19619e7e98) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/OSD.h:416
#27 OSD::ShardedOpWQ::_process (this=0xce45468, thread_index=<optimized out>, hb=<optimized out>) at /home/rook/go/src/github.com/rook/rook/ceph/src/osd/OSD.cc:8946
#28 0x0000000001029c65 in ShardedThreadPool::shardedthreadpool_worker (this=0xce44a78, thread_index=2) at /home/rook/go/src/github.com/rook/rook/ceph/src/common/WorkQueue.cc:356
#29 0x000000000102d100 in ShardedThreadPool::WorkThreadSharded::entry (this=<optimized out>) at /home/rook/go/src/github.com/rook/rook/ceph/src/common/WorkQueue.h:685
#30 0x0000000000c2ac35 in start_thread (arg=0x7f19619eb700) at pthread_create.c:333
#31 0x000000000235816b in clone ()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment