Project

General

Profile

Bug #3429

osd: failed assert(oe.soid.snap != ((__u64)(-2)))

Added by Josh Durgin over 11 years ago. Updated almost 11 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
OSD
Target version:
-
% Done:

0%

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

Description

This happened on 0.53.

Backtrace:

2012-10-31 16:20:33.695588 7fe6f2b0e700 -1 osd/PG.cc: In function 'bool PG::merge_old_entry(ObjectStore::Transaction&, pg_log_entry_t&)' thread 7fe6f2b0e700 time 2012-10-31 16:20:33.691176
osd/PG.cc: 370: FAILED assert(oe.soid.snap != ((__u64)(-2)))

 ceph version 0.53 (commit:2528b5ee105b16352c91af064af5c0b5a7d45d7c)
 1: (PG::merge_old_entry(ObjectStore::Transaction&, pg_log_entry_t&)+0xe02) [0x65c242]
 2: (PG::merge_log(ObjectStore::Transaction&, pg_info_t&, pg_log_t&, int)+0xac9) [0x65d4b9]
 3: (PG::proc_master_log(ObjectStore::Transaction&, pg_info_t&, pg_log_t&, pg_missing_t&, int)+0x81) [0x660db1]
 4: (PG::RecoveryState::GetLog::react(PG::RecoveryState::GotLog const&)+0x282) [0x67bfa2]
 5: (boost::statechart::detail::reaction_result boost::statechart::simple_state<PG::RecoveryState::GetLog, PG::RecoveryState::Peering, 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>::local_react_impl_non_empty::local_react_impl<boost::mpl::list3<boost::statechart::custom_reaction<PG::RecoveryState::GotLog>, boost::statechart::custom_reaction<PG::AdvMap>, boost::statechart::transition<PG::RecoveryState::IsIncomplete, PG::RecoveryState::Incomplete, boost::statechart::detail::no_context<PG::RecoveryState::IsIncomplete>, &(boost::statechart::detail::no_context<PG::RecoveryState::IsIncomplete>::no_function(PG::RecoveryState::IsIncomplete const&))> >, boost::statechart::simple_state<PG::RecoveryState::GetLog, PG::RecoveryState::Peering, 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> >(boost::statechart::simple_state<PG::RecoveryState::GetLog, PG::RecoveryState::Peering, 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>&, boost::statechart::event_base const&, void const*)+0xf0) [0x69ce60]
 6: (boost::statechart::simple_state<PG::RecoveryState::GetLog, PG::RecoveryState::Peering, 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*)+0x81) [0x69cfa1]
 7: (boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, PG::RecoveryState::Initial, std::allocator<void>, boost::statechart::null_exception_translator>::process_queued_events()+0xfb) [0x68650b]
 8: (boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, PG::RecoveryState::Initial, std::allocator<void>, boost::statechart::null_exception_translator>::process_event(boost::statechart::event_base const&)+0x1e) [0x68668e]
 9: (PG::handle_peering_event(std::tr1::shared_ptr<PG::CephPeeringEvt>, PG::RecoveryCtx*)+0x347) [0x64b3d7]
 10: (OSD::process_peering_events(std::list<PG*, std::allocator<PG*> > const&)+0x263) [0x5fb733]
 11: (OSD::PeeringWQ::_process(std::list<PG*, std::allocator<PG*> > const&)+0x10) [0x62be10]
 12: (ThreadPool::worker(ThreadPool::WorkThread*)+0x517) [0x7e7b07]
 13: (ThreadPool::WorkThread::entry()+0x10) [0x7e9a50]
 14: (()+0x7e9a) [0x7fe70428ae9a]
 15: (clone()+0x6d) [0x7fe70283ccbd]

Sam says that Mike ran into this recently as well, and it's an issue dealing with multiple divergent log entries on the object.

History

#1 Updated by Sage Weil almost 11 years ago

  • Status changed from New to Resolved

Also available in: Atom PDF