Project

General

Profile

Bug #60356

crash: int64_t BlueFS::_read_random(BlueFS::FileReader*, uint64_t, uint64_t, char*): assert(r == 0)

Added by Telemetry Bot 11 months ago. Updated 11 months ago.

Status:
New
Priority:
Normal
Assignee:
-
Target version:
-
% Done:

0%

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

3c2f2d6fdca673f6bacbf13a38e0501e6ec4f48e0e73c6b7e2d423499b47d5ba


Description

http://telemetry.front.sepia.ceph.com:4000/d/jByk5HaMz/crash-spec-x-ray?orgId=1&var-sig_v2=66f020afb53410d5db83d6dd67bca387697da4481a56ac437e909e57abae97b3

Assert condition: r == 0
Assert function: int64_t BlueFS::_read_random(BlueFS::FileReader*, uint64_t, uint64_t, char*)

Sanitized backtrace:

    BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*)
    BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const
    rocksdb::LegacyRandomAccessFileWrapper::Read(unsigned long, unsigned long, rocksdb::IOOptions const&, rocksdb::Slice*, char*, rocksdb::IODebugContext*) const
    rocksdb::RandomAccessFileReader::Read(rocksdb::IOOptions const&, unsigned long, unsigned long, rocksdb::Slice*, char*, std::unique_ptr<char [], std::default_delete<char []> >*, bool) const
    rocksdb::BlockFetcher::ReadBlockContents()
    rocksdb::Status rocksdb::BlockBasedTable::MaybeReadBlockAndLoadToCache<rocksdb::Block>(rocksdb::FilePrefetchBuffer*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::UncompressionDict const&, rocksdb::CachableEntry<rocksdb::Block>*, rocksdb::BlockType, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, rocksdb::BlockContents*) const
    rocksdb::Status rocksdb::BlockBasedTable::RetrieveBlock<rocksdb::Block>(rocksdb::FilePrefetchBuffer*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::UncompressionDict const&, rocksdb::CachableEntry<rocksdb::Block>*, rocksdb::BlockType, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, bool, bool) const
    rocksdb::BlockBasedTable::IndexReaderCommon::ReadIndexBlock(rocksdb::BlockBasedTable const*, rocksdb::FilePrefetchBuffer*, rocksdb::ReadOptions const&, bool, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, rocksdb::CachableEntry<rocksdb::Block>*)
    rocksdb::BlockBasedTable::IndexReaderCommon::GetOrReadIndexBlock(bool, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, rocksdb::CachableEntry<rocksdb::Block>*) const
    rocksdb::BinarySearchIndexReader::NewIterator(rocksdb::ReadOptions const&, bool, rocksdb::IndexBlockIter*, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*)
    rocksdb::BlockBasedTable::NewIndexIterator(rocksdb::ReadOptions const&, bool, rocksdb::IndexBlockIter*, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*) const
    rocksdb::BlockBasedTable::NewIterator(rocksdb::ReadOptions const&, rocksdb::SliceTransform const*, rocksdb::Arena*, bool, rocksdb::TableReaderCaller, unsigned long, bool)
    rocksdb::TableCache::NewIterator(rocksdb::ReadOptions const&, rocksdb::FileOptions const&, rocksdb::InternalKeyComparator const&, rocksdb::FileMetaData const&, rocksdb::RangeDelAggregator*, rocksdb::SliceTransform const*, rocksdb::TableReader**, rocksdb::HistogramImpl*, rocksdb::TableReaderCaller, rocksdb::Arena*, bool, int, unsigned long, rocksdb::InternalKey const*, rocksdb::InternalKey const*, bool)
    rocksdb::IteratorWrapperBase<rocksdb::Slice>::Seek(rocksdb::Slice const&)
    rocksdb::MergingIterator::Seek(rocksdb::Slice const&)
    rocksdb::IteratorWrapperBase<rocksdb::Slice>::Seek(rocksdb::Slice const&)
    rocksdb::DBIter::Seek(rocksdb::Slice const&)
    rocksdb::ArenaWrappedDBIter::Seek(rocksdb::Slice const&)
    ShardMergeIteratorImpl::lower_bound(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
    BlueStore::_collection_list(BlueStore::Collection*, ghobject_t const&, ghobject_t const&, int, bool, std::vector<ghobject_t, std::allocator<ghobject_t> >*, ghobject_t*)
    BlueStore::collection_list(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, ghobject_t const&, ghobject_t const&, int, std::vector<ghobject_t, std::allocator<ghobject_t> >*, ghobject_t*)

Crash dump sample:
{
    "archived": "2023-02-08 12:19:36.822669",
    "assert_condition": "r == 0",
    "assert_file": "os/bluestore/BlueFS.cc",
    "assert_func": "int64_t BlueFS::_read_random(BlueFS::FileReader*, uint64_t, uint64_t, char*)",
    "assert_line": 2094,
    "assert_msg": "os/bluestore/BlueFS.cc: In function 'int64_t BlueFS::_read_random(BlueFS::FileReader*, uint64_t, uint64_t, char*)' thread 7ff49f169240 time 2023-02-08T14:35:44.786400+0800\nos/bluestore/BlueFS.cc: 2094: FAILED ceph_assert(r == 0)",
    "assert_thread_name": "ceph-osd",
    "backtrace": [
        "/lib/x86_64-linux-gnu/libpthread.so.0(+0x13140) [0x7ff49f7cf140]",
        "gsignal()",
        "abort()",
        "(ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x17e) [0x55f997479fca]",
        "/usr/bin/ceph-osd(+0xc2310e) [0x55f99747a10e]",
        "(BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*)+0xd34) [0x55f997ba5454]",
        "(BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const+0x20) [0x55f997bc5c30]",
        "(rocksdb::LegacyRandomAccessFileWrapper::Read(unsigned long, unsigned long, rocksdb::IOOptions const&, rocksdb::Slice*, char*, rocksdb::IODebugContext*) const+0x58) [0x55f9980ce19c]",
        "(rocksdb::RandomAccessFileReader::Read(rocksdb::IOOptions const&, unsigned long, unsigned long, rocksdb::Slice*, char*, std::unique_ptr<char [], std::default_delete<char []> >*, bool) const+0x9cd) [0x55f9984d3fd7]",
        "(rocksdb::BlockFetcher::ReadBlockContents()+0x3cf) [0x55f9983a4149]",
        "(rocksdb::Status rocksdb::BlockBasedTable::MaybeReadBlockAndLoadToCache<rocksdb::Block>(rocksdb::FilePrefetchBuffer*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::UncompressionDict const&, rocksdb::CachableEntry<rocksdb::Block>*, rocksdb::BlockType, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, rocksdb::BlockContents*) const+0x441) [0x55f998379fef]",
        "(rocksdb::Status rocksdb::BlockBasedTable::RetrieveBlock<rocksdb::Block>(rocksdb::FilePrefetchBuffer*, rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::UncompressionDict const&, rocksdb::CachableEntry<rocksdb::Block>*, rocksdb::BlockType, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, bool, bool) const+0x10d) [0x55f99837648f]",
        "(rocksdb::BlockBasedTable::IndexReaderCommon::ReadIndexBlock(rocksdb::BlockBasedTable const*, rocksdb::FilePrefetchBuffer*, rocksdb::ReadOptions const&, bool, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, rocksdb::CachableEntry<rocksdb::Block>*)+0x167) [0x55f9983992b1]",
        "(rocksdb::BlockBasedTable::IndexReaderCommon::GetOrReadIndexBlock(bool, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, rocksdb::CachableEntry<rocksdb::Block>*) const+0x129) [0x55f998399415]",
        "(rocksdb::BinarySearchIndexReader::NewIterator(rocksdb::ReadOptions const&, bool, rocksdb::IndexBlockIter*, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*)+0xbb) [0x55f9984e8a95]",
        "(rocksdb::BlockBasedTable::NewIndexIterator(rocksdb::ReadOptions const&, bool, rocksdb::IndexBlockIter*, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*) const+0xcb) [0x55f998365ff7]",
        "(rocksdb::BlockBasedTable::NewIterator(rocksdb::ReadOptions const&, rocksdb::SliceTransform const*, rocksdb::Arena*, bool, rocksdb::TableReaderCaller, unsigned long, bool)+0x108) [0x55f9983681f8]",
        "(rocksdb::TableCache::NewIterator(rocksdb::ReadOptions const&, rocksdb::FileOptions const&, rocksdb::InternalKeyComparator const&, rocksdb::FileMetaData const&, rocksdb::RangeDelAggregator*, rocksdb::SliceTransform const*, rocksdb::TableReader**, rocksdb::HistogramImpl*, rocksdb::TableReaderCaller, rocksdb::Arena*, bool, int, unsigned long, rocksdb::InternalKey const*, rocksdb::InternalKey const*, bool)+0x2d9) [0x55f9982326cb]",
        "/usr/bin/ceph-osd(+0x19ea696) [0x55f998241696]",
        "/usr/bin/ceph-osd(+0x19eb43c) [0x55f99824243c]",
        "/usr/bin/ceph-osd(+0x19ea96a) [0x55f99824196a]",
        "(rocksdb::IteratorWrapperBase<rocksdb::Slice>::Seek(rocksdb::Slice const&)+0x5f) [0x55f99819a8db]",
        "(rocksdb::MergingIterator::Seek(rocksdb::Slice const&)+0x118) [0x55f9983ac904]",
        "(rocksdb::IteratorWrapperBase<rocksdb::Slice>::Seek(rocksdb::Slice const&)+0x5f) [0x55f99819a8db]",
        "(rocksdb::DBIter::Seek(rocksdb::Slice const&)+0x225) [0x55f998195ed5]",
        "(rocksdb::ArenaWrappedDBIter::Seek(rocksdb::Slice const&)+0x27) [0x55f998459bcb]",
        "(ShardMergeIteratorImpl::lower_bound(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)+0x65) [0x55f99808d375]",
        "/usr/bin/ceph-osd(+0x11fe165) [0x55f997a55165]",
        "/usr/bin/ceph-osd(+0x1203617) [0x55f997a5a617]",
        "(BlueStore::_collection_list(BlueStore::Collection*, ghobject_t const&, ghobject_t const&, int, bool, std::vector<ghobject_t, std::allocator<ghobject_t> >*, ghobject_t*)+0x785) [0x55f997a81155]",
        "(BlueStore::collection_list(boost::intrusive_ptr<ObjectStore::CollectionImpl>&, ghobject_t const&, ghobject_t const&, int, std::vector<ghobject_t, std::allocator<ghobject_t> >*, ghobject_t*)+0xc7) [0x55f997a82f57]" 
    ],
    "ceph_version": "17.2.5",
    "crash_id": "2023-02-08T06:35:44.898265Z_5ca9824c-d336-4ed1-bea6-b5f4d8538ca1",
    "entity_name": "osd.2ef6376bef447787e332c258d9a3b57540cd0e00",
    "os_id": "11",
    "os_name": "Debian GNU/Linux 11 (bullseye)",
    "os_version": "11 (bullseye)",
    "os_version_id": "11",
    "process_name": "ceph-osd",
    "stack_sig": "3c2f2d6fdca673f6bacbf13a38e0501e6ec4f48e0e73c6b7e2d423499b47d5ba",
    "timestamp": "2023-02-08T06:35:44.898265Z",
    "utsname_machine": "x86_64",
    "utsname_release": "5.15.85-1-pve",
    "utsname_sysname": "Linux",
    "utsname_version": "#1 SMP PVE 5.15.85-1 (2023-02-01T00:00Z)" 
}

History

#1 Updated by Telemetry Bot 11 months ago

  • Crash signature (v1) updated (diff)
  • Crash signature (v2) updated (diff)
  • Affected Versions v17.2.5 added

Also available in: Atom PDF