Bug #15422
Updated by Loïc Dachary about 8 years ago
<pre> 2016-04-07 18:24:57.858451 3ff7b7fe160 -1 osd/osd_types.cc: In function 'static bool pg_interval_t::check_new_interval(int, int, const std::vector<int>&, const std::vector<int>&, int, int, const std::vector<int>&, const std::vector<int>&, epoch_t, epoch_t, OSDMapRef, OSDMapRef, pg_t, IsPGRecoverablePredicate*, std::map<unsigned int, pg_interval_t>*, std::ostream*)' thread 3ff7b7fe160 time 2016-04-07 18:24:57.850185 Thread 1 (LWP 18893): osd/osd_types.cc: 3106: FAILED assert(i.first <= i.last) ceph version 10.0.4-1159-gcd3385b (cd3385b59ff9764eb5cae9a80faf04ab4e648f05) 1: (ceph::__ceph_assert_fail(char #0 0x000003ffae9d103c in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:37 #1 0x000002aac4ad7228 in ?? () #2 <signal handler called> #3 __GI_abort () at abort.c:91 #4 0x000002aac4bbb1bc in ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x8c) [0x2aac4bbb020] 2: (pg_interval_t::check_new_interval(int, const*) () #5 0x000002aac4846240 in pg_interval_t::check_new_interval(int, int, std::vector<int, std::allocator<int> > const&, std::vector<int, std::allocator<int> > const&, int, int, std::vector<int, std::allocator<int> > const&, std::vector<int, std::allocator<int> > const&, unsigned int, unsigned int, std::shared_ptr<OSDMap const>, std::shared_ptr<OSDMap const>, pg_t, IsPGRecoverablePredicate*, std::map<unsigned int, pg_interval_t, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, pg_interval_t> > >*, std::ostream*)+0x738) [0x2aac4846240] 3: (PG::start_peering_interval(std::shared_ptr<OSDMap std::ostream*) () #6 0x000002aac46b7b2c in PG::start_peering_interval(std::shared_ptr<OSDMap const>, std::vector<int, std::allocator<int> > const&, int, std::vector<int, std::allocator<int> > const&, int, ObjectStore::Transaction*)+0x32c) [0x2aac46b7b2c] 4: (PG::RecoveryState::Reset::react(PG::AdvMap const&)+0x3c8) [0x2aac46b8c10] 5: (boost::statechart::simple_state<PG::RecoveryState::Reset, ObjectStore::Transaction*) () #7 0x000002aac46b8c10 in PG::RecoveryState::Reset::react(PG::AdvMap const&) () #8 0x000002aac46ef82c in boost::statechart::simple_state<PG::RecoveryState::Reset, PG::RecoveryState::RecoveryMachine, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::react_impl(boost::statechart::event_base const&, void const*)+0x1f8) [0x2aac46ef82c] 6: (boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, const*) () #9 0x000002aac46d6f0c in boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, PG::RecoveryState::Initial, std::allocator<void>, boost::statechart::null_exception_translator>::send_event(boost::statechart::event_base const&)+0x64) [0x2aac46d6f0c] 7: (boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, const&) () #10 0x000002aac46d70c4 in boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, PG::RecoveryState::Initial, std::allocator<void>, boost::statechart::null_exception_translator>::process_queued_events()+0x104) [0x2aac46d70c4] 8: (PG::handle_advance_map(std::shared_ptr<OSDMap boost::statechart::null_exception_translator>::process_queued_events() () #11 0x000002aac46ace74 in PG::handle_advance_map(std::shared_ptr<OSDMap const>, std::shared_ptr<OSDMap const>, std::vector<int, std::allocator<int> >&, int, std::vector<int, std::allocator<int> >&, int, PG::RecoveryCtx*)+0x360) [0x2aac46ace74] 9: (OSD::advance_pg(unsigned PG::RecoveryCtx*) () #12 0x000002aac45fbc70 in OSD::advance_pg(unsigned int, PG*, ThreadPool::TPHandle&, PG::RecoveryCtx*, std::set<boost::intrusive_ptr<PG>, std::less<boost::intrusive_ptr<PG> >, std::allocator<boost::intrusive_ptr<PG> > >*)+0x234) [0x2aac45fbc70] 10: (OSD::process_peering_events(std::list<PG*, >*) () #13 0x000002aac460c1b4 in OSD::process_peering_events(std::list<PG*, std::allocator<PG*> > const&, ThreadPool::TPHandle&)+0x154) [0x2aac460c1b4] 11: (OSD::PeeringWQ::_process(std::list<PG*, ThreadPool::TPHandle&) () #14 0x000002aac464fc10 in OSD::PeeringWQ::_process(std::list<PG*, std::allocator<PG*> > const&, ThreadPool::TPHandle&)+0x24) [0x2aac464fc10] 12: (ThreadPool::BatchWorkQueue<PG>::_void_process(void*, ThreadPool::TPHandle&)+0x14) [0x2aac461743c] 13: (ThreadPool::worker(ThreadPool::WorkThread*)+0x4b0) [0x2aac4bad818] 14: (ThreadPool::WorkThread::entry()+0x14) [0x2aac4bae99c] 15: (Thread::entry_wrapper()+0x70) [0x2aac4ba0e7c] 16: (()+0x7e2c) [0x3ffae9c7e2c] NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this. ThreadPool::TPHandle&) () #15 0x000002aac461743c in ThreadPool::BatchWorkQueue<PG>::_void_process(void*, ThreadPool::TPHandle&) () #16 0x000002aac4bad818 in ThreadPool::worker(ThreadPool::WorkThread*) () #17 0x000002aac4bae99c in ThreadPool::WorkThread::entry() () #18 0x000002aac4ba0e7c in Thread::entry_wrapper() () #19 0x000003ffae9c7e2c in start_thread (arg=0x3ff7b7fe160) at pthread_create.c:314 #20 0x000003ffae4e8430 in clone () at ../ports/sysdeps/unix/sysv/linux/aarch64/nptl/../clone.S:96 </pre>