Project

General

Profile

Actions

Bug #19981

closed

osds abort on shutdown with assert(/build/ceph-12.0.2/src/os/bluestore/BlueFS.cc: 898: FAILED assert(r == 0))

Added by xw zhang almost 7 years ago. Updated almost 7 years ago.

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

version:
root@node0:~# ceph -v
ceph version 12.0.2 (5a1b6b3269da99a18984c138c23935e5eb96f73e)

bluestore+rbd+ec+overwrite+iscsi

steps:
1.writing files;
2.stop three osd-services;
3.check osd log

result:
2017-05-17 17:00:26.932840 7f79c8866700 -1 bdev(0x557c312b0900 /var/lib/ceph/osd/ceph-4/block.db) read_random 0x7deadf3~fa5 error: (5) Input/output error
2017-05-17 17:00:26.983576 7f79c8866700 -1 /build/ceph-12.0.2/src/os/bluestore/BlueFS.cc: In function 'int BlueFS::_read_random(BlueFS::FileReader*, uint64_t, size_t, char*)' thread 7f79c8866700 time 2017-05-17 17:00:26.932893
/build/ceph-12.0.2/src/os/bluestore/BlueFS.cc: 898: FAILED assert(r == 0)

ceph version 12.0.2 (5a1b6b3269da99a18984c138c23935e5eb96f73e)
1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x102) [0x557c26bd3072]
2: (BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*)+0x7e4) [0x557c26b1bc34]
3: (BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const+0x20) [0x557c26b45470]
4: (rocksdb::RandomAccessFileReader::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const+0x3a5) [0x557c26f5b9c3]
5: (()+0x104848d) [0x557c26f0c48d]
6: (rocksdb::ReadBlockContents(rocksdb::RandomAccessFileReader*, rocksdb::Footer const&, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockContents*, rocksdb::ImmutableCFOptions const&, bool, rocksdb::Slice const&, rocksdb::PersistentCacheOptions const&)+0x544) [0x557c26f0cd9c]
7: (()+0x102e330) [0x557c26ef2330]
8: (rocksdb::BlockBasedTable::MaybeLoadDataBlockToCache(rocksdb::BlockBasedTable::Rep*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::Slice, rocksdb::BlockBasedTable::CachableEntry<rocksdb::Block>*, bool)+0x37c) [0x557c26ef723c]
9: (rocksdb::BlockBasedTable::NewDataBlockIterator(rocksdb::BlockBasedTable::Rep*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::BlockIter*, bool, rocksdb::Status)+0x17d) [0x557c26ef6a53]
10: (rocksdb::BlockBasedTable::NewDataBlockIterator(rocksdb::BlockBasedTable::Rep*, rocksdb::ReadOptions const&, rocksdb::Slice const&, rocksdb::BlockIter*, bool)+0xa6) [0x557c26ef686c]
11: (rocksdb::BlockBasedTable::Get(rocksdb::ReadOptions const&, rocksdb::Slice const&, rocksdb::GetContext*, bool)+0x3fd) [0x557c26ef8779]
12: (rocksdb::TableCache::Get(rocksdb::ReadOptions const&, rocksdb::InternalKeyComparator const&, rocksdb::FileDescriptor const&, rocksdb::Slice const&, rocksdb::GetContext*, rocksdb::HistogramImpl*, bool, int)+0x69f) [0x557c270718b9]
13: (rocksdb::Version::Get(rocksdb::ReadOptions const&, rocksdb::LookupKey const&, rocksdb::PinnableSlice*, rocksdb::Status*, rocksdb::MergeContext*, rocksdb::RangeDelAggregator*, bool*, bool*, unsigned long*)+0x38d) [0x557c26e6bb4d]
14: (rocksdb::DBImpl::GetImpl(rocksdb::ReadOptions const&, rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::PinnableSlice*, bool*)+0x652) [0x557c26fd8638]
15: (rocksdb::DBImpl::Get(rocksdb::ReadOptions const&, rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, rocksdb::PinnableSlice*)+0x5b) [0x557c26fd7fc7]
16: (rocksdb::DB::Get(rocksdb::ReadOptions const&, rocksdb::ColumnFamilyHandle*, rocksdb::Slice const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >)+0xa0) [0x557c26ab6f20]
17: (RocksDBStore::get(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, char const
, unsigned long, ceph::buffer::list*)+0x1c8) [0x557c26aae408]
18: (BlueStore::Collection::get_onode(ghobject_t const&, bool)+0x5ce) [0x557c26a3583e]
19: (BlueStore::_txc_add_transaction(BlueStore::TransContext*, ObjectStore::Transaction*)+0xa55) [0x557c26a6f165]
20: (BlueStore::queue_transactions(ObjectStore::Sequencer*, std::vector<ObjectStore::Transaction, std::allocator<ObjectStore::Transaction> >&, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x536) [0x557c26a71716]
21: (ObjectStore::queue_transaction(ObjectStore::Sequencer*, ObjectStore::Transaction&&, Context*, Context*, Context*, boost::intrusive_ptr<TrackedOp>, ThreadPool::TPHandle*)+0x17c) [0x557c2665a38c]
22: (OSD::handle_osd_map(MOSDMap*)+0x1095) [0x557c26615b45]
23: (OSD::_dispatch(Message*)+0x105) [0x557c26634005]
24: (OSD::ms_dispatch(Message*)+0x87) [0x557c266345c7]
25: (DispatchQueue::entry()+0xf4a) [0x557c26da0aea]
26: (DispatchQueue::DispatchThread::entry()+0xd) [0x557c26c5acfd]
27: (()+0x76ba) [0x7f79d54b16ba]
28: (clone()+0x6d) [0x7f79d452882d]
NOTE: a copy of the executable, or `objdump -rdS <executable>` is needed to interpret this.
Actions #1

Updated by xw zhang almost 7 years ago

I pulled out a disk, and then there was the problem

Actions #2

Updated by Sage Weil almost 7 years ago

  • Status changed from New to Rejected

EIO is expected if you yank the disk.

Actions

Also available in: Atom PDF