Project

General

Profile

Actions

Bug #56922

open

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

Added by Telemetry Bot over 1 year 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):

bb9866734f7ffcb9f6c5dae975741c83eda5fad2a8d0034cb652ea660de827d2


Description

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

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(unsigned long, unsigned long, rocksdb::Slice*, char*, bool) const
    rocksdb::FilePrefetchBuffer::Prefetch(rocksdb::RandomAccessFileReader*, unsigned long, unsigned long, bool)
    rocksdb::FilePrefetchBuffer::TryReadFromCache(unsigned long, unsigned long, rocksdb::Slice*, bool)
    rocksdb::BlockFetcher::TryGetFromPrefetchBuffer()
    rocksdb::BlockFetcher::ReadBlockContents()
    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::DataBlockIter* rocksdb::BlockBasedTable::NewDataBlockIterator<rocksdb::DataBlockIter>(rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::DataBlockIter*, rocksdb::BlockType, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, rocksdb::Status, rocksdb::FilePrefetchBuffer*, bool) const
    rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::InitDataBlock()
    rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::FindBlockForward()
    rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::FindKeyForward()
    rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::Next()
    rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::NextAndGetResult(rocksdb::IterateResult*)
    rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()
    rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()
    rocksdb::MergingIterator::Next()
    rocksdb::CompactionIterator::Next()
    rocksdb::CompactionJob::ProcessKeyValueCompaction(rocksdb::CompactionJob::SubcompactionState*)
    rocksdb::CompactionJob::Run()
    rocksdb::DBImpl::BackgroundCompaction(bool*, rocksdb::JobContext*, rocksdb::LogBuffer*, rocksdb::DBImpl::PrepickedCompaction*, rocksdb::Env::Priority)
    rocksdb::DBImpl::BackgroundCallCompaction(rocksdb::DBImpl::PrepickedCompaction*, rocksdb::Env::Priority)
    rocksdb::DBImpl::BGWorkCompaction(void*)
    void std::__invoke_impl<void, void (*&)(void*), void*&>(std::__invoke_other, void (*&)(void*), void*&)
    std::__invoke_result<void (*&)(void*), void*&>::type std::__invoke<void (*&)(void*), void*&>(void (*&)(void*), void*&)
    void std::_Bind<void (*(void*))(void*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>)
    void std::_Bind<void (*(void*))(void*)>::operator()<, void>()
    void std::__invoke_impl<void, std::_Bind<void (*(void*))(void*)>&>(std::__invoke_other, std::_Bind<void (*(void*))(void*)>&)
    std::enable_if<std::__and_<std::is_void<void>, std::__is_invocable<std::_Bind<void (*(void*))(void*)>&> >::value, void>::type std::__invoke_r<void, std::_Bind<void (*(void*))(void*)>&>(std::_Bind<void (*(void*))(void*)>&)
    std::function<void ()>::operator()() const
    rocksdb::ThreadPoolImpl::Impl::BGThread(unsigned long)
    rocksdb::ThreadPoolImpl::Impl::BGThreadWrapper(void*)
    void std::__invoke_impl<void, void (*)(void*), rocksdb::BGThreadMetadata*>(std::__invoke_other, void (*&&)(void*), rocksdb::BGThreadMetadata*&&)
    std::__invoke_result<void (*)(void*), rocksdb::BGThreadMetadata*>::type std::__invoke<void (*)(void*), rocksdb::BGThreadMetadata*>(void (*&&)(void*), rocksdb::BGThreadMetadata*&&)
    void std::thread::_Invoker<std::tuple<void (*)(void*), rocksdb::BGThreadMetadata*> >::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>)
    std::thread::_Invoker<std::tuple<void (*)(void*), rocksdb::BGThreadMetadata*> >::operator()()

Crash dump sample:
{
    "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": 1922,
    "assert_msg": "os/bluestore/BlueFS.cc: In function 'int64_t BlueFS::_read_random(BlueFS::FileReader*, uint64_t, uint64_t, char*)' thread 7f76caf1a700 time 2022-07-21T13:36:58.524682+0200\nos/bluestore/BlueFS.cc: 1922: FAILED ceph_assert(r == 0)",
    "assert_thread_name": "rocksdb:low1",
    "backtrace": [
        "/lib/x86_64-linux-gnu/libpthread.so.0(+0x14140) [0x7f76cee53140]",
        "gsignal()",
        "abort()",
        "(ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x16e) [0x7f76cf3a6028]",
        "/usr/lib/ceph/libceph-common.so.2(+0x251169) [0x7f76cf3a6169]",
        "(BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*)+0xfa3) [0x558cfde53403]",
        "(BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const+0x20) [0x558cfe015da0]",
        "(rocksdb::LegacyRandomAccessFileWrapper::Read(unsigned long, unsigned long, rocksdb::IOOptions const&, rocksdb::Slice*, char*, rocksdb::IODebugContext*) const+0x58) [0x558cfe106172]",
        "(rocksdb::RandomAccessFileReader::Read(unsigned long, unsigned long, rocksdb::Slice*, char*, bool) const+0x862) [0x558cfe48be48]",
        "(rocksdb::FilePrefetchBuffer::Prefetch(rocksdb::RandomAccessFileReader*, unsigned long, unsigned long, bool)+0x3f8) [0x558cfe48b1c2]",
        "(rocksdb::FilePrefetchBuffer::TryReadFromCache(unsigned long, unsigned long, rocksdb::Slice*, bool)+0x1bc) [0x558cfe48b434]",
        "(rocksdb::BlockFetcher::TryGetFromPrefetchBuffer()+0x80) [0x558cfe392036]",
        "(rocksdb::BlockFetcher::ReadBlockContents()+0x9c) [0x558cfe38fad6]",
        "ceph-bluestore-tool(+0xcc23b3) [0x558cfe35a3b3]",
        "(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+0x473) [0x558cfe362345]",
        "(rocksdb::DataBlockIter* rocksdb::BlockBasedTable::NewDataBlockIterator<rocksdb::DataBlockIter>(rocksdb::ReadOptions const&, rocksdb::BlockHandle const&, rocksdb::DataBlockIter*, rocksdb::BlockType, rocksdb::GetContext*, rocksdb::BlockCacheLookupContext*, rocksdb::Status, rocksdb::FilePrefetchBuffer*, bool) const+0x2db) [0x558cfe365555]",
        "(rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::InitDataBlock()+0x4a1) [0x558cfe37aa07]",
        "(rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::FindBlockForward()+0x2c2) [0x558cfe37c526]",
        "(rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::FindKeyForward()+0x90) [0x558cfe37afa4]",
        "(rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::Next()+0x8a) [0x558cfe3788ca]",
        "(rocksdb::BlockBasedTableIterator<rocksdb::DataBlockIter, rocksdb::Slice>::NextAndGetResult(rocksdb::IterateResult*)+0x1d) [0x558cfe3788f9]",
        "(rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()+0x62) [0x558cfe1c93b6]",
        "ceph-bluestore-tool(+0xbc8e0b) [0x558cfe260e0b]",
        "ceph-bluestore-tool(+0xbc9813) [0x558cfe261813]",
        "(rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()+0x62) [0x558cfe1c93b6]",
        "(rocksdb::MergingIterator::Next()+0xaf) [0x558cfe39ac4d]",
        "(rocksdb::CompactionIterator::Next()+0x233) [0x558cfe44b307]",
        "(rocksdb::CompactionJob::ProcessKeyValueCompaction(rocksdb::CompactionJob::SubcompactionState*)+0xcd3) [0x558cfe45e0dd]",
        "(rocksdb::CompactionJob::Run()+0x236) [0x558cfe45bda0]",
        "(rocksdb::DBImpl::BackgroundCompaction(bool*, rocksdb::JobContext*, rocksdb::LogBuffer*, rocksdb::DBImpl::PrepickedCompaction*, rocksdb::Env::Priority)+0x248b) [0x558cfe1725b9]",
        "(rocksdb::DBImpl::BackgroundCallCompaction(rocksdb::DBImpl::PrepickedCompaction*, rocksdb::Env::Priority)+0x20d) [0x558cfe16f8fb]",
        "(rocksdb::DBImpl::BGWorkCompaction(void*)+0xca) [0x558cfe16e1e2]",
        "(void std::__invoke_impl<void, void (*&)(void*), void*&>(std::__invoke_other, void (*&)(void*), void*&)+0x34) [0x558cfe3e3ffc]",
        "(std::__invoke_result<void (*&)(void*), void*&>::type std::__invoke<void (*&)(void*), void*&>(void (*&)(void*), void*&)+0x37) [0x558cfe3e3c97]",
        "(void std::_Bind<void (*(void*))(void*)>::__call<void, , 0ul>(std::tuple<>&&, std::_Index_tuple<0ul>)+0x48) [0x558cfe3e35b8]",
        "(void std::_Bind<void (*(void*))(void*)>::operator()<, void>()+0x24) [0x558cfe3e2cfc]",
        "(void std::__invoke_impl<void, std::_Bind<void (*(void*))(void*)>&>(std::__invoke_other, std::_Bind<void (*(void*))(void*)>&)+0x20) [0x558cfe3e24c1]",
        "(std::enable_if<std::__and_<std::is_void<void>, std::__is_invocable<std::_Bind<void (*(void*))(void*)>&> >::value, void>::type std::__invoke_r<void, std::_Bind<void (*(void*))(void*)>&>(std::_Bind<void (*(void*))(void*)>&)+0x20) [0x558cfe3e1798]",
        "(std::_Function_handler<void (), std::_Bind<void (*(void*))(void*)> >::_M_invoke(std::_Any_data const&)+0x20) [0x558cfe3e098e]",
        "(std::function<void ()>::operator()() const+0x32) [0x558cfe1105f0]",
        "(rocksdb::ThreadPoolImpl::Impl::BGThread(unsigned long)+0x269) [0x558cfe3dcc7b]",
        "(rocksdb::ThreadPoolImpl::Impl::BGThreadWrapper(void*)+0x10d) [0x558cfe3dcde1]",
        "(void std::__invoke_impl<void, void (*)(void*), rocksdb::BGThreadMetadata*>(std::__invoke_other, void (*&&)(void*), rocksdb::BGThreadMetadata*&&)+0x34) [0x558cfe3e4537]",
        "(std::__invoke_result<void (*)(void*), rocksdb::BGThreadMetadata*>::type std::__invoke<void (*)(void*), rocksdb::BGThreadMetadata*>(void (*&&)(void*), rocksdb::BGThreadMetadata*&&)+0x37) [0x558cfe3e44b2]",
        "(void std::thread::_Invoker<std::tuple<void (*)(void*), rocksdb::BGThreadMetadata*> >::_M_invoke<0ul, 1ul>(std::_Index_tuple<0ul, 1ul>)+0x43) [0x558cfe3e4425]",
        "(std::thread::_Invoker<std::tuple<void (*)(void*), rocksdb::BGThreadMetadata*> >::operator()()+0x18) [0x558cfe3e43de]",
        "(std::thread::_State_impl<std::thread::_Invoker<std::tuple<void (*)(void*), rocksdb::BGThreadMetadata*> > >::_M_run()+0x1c) [0x558cfe3e43c2]",
        "/lib/x86_64-linux-gnu/libstdc++.so.6(+0xceed0) [0x7f76ced3aed0]",
        "/lib/x86_64-linux-gnu/libpthread.so.0(+0x8ea7) [0x7f76cee47ea7]",
        "clone()" 
    ],
    "ceph_version": "16.2.9",
    "crash_id": "2022-07-21T11:36:58.601646Z_cdaf7e2c-5d10-4ae7-ad25-f0fba822aaeb",
    "entity_name": "client.a5d2f00f35747854ae32abe4feddf46c93a64eaa",
    "os_id": "11",
    "os_name": "Debian GNU/Linux 11 (bullseye)",
    "os_version": "11 (bullseye)",
    "os_version_id": "11",
    "process_name": "ceph-bluestore-",
    "stack_sig": "bb9866734f7ffcb9f6c5dae975741c83eda5fad2a8d0034cb652ea660de827d2",
    "timestamp": "2022-07-21T11:36:58.601646Z",
    "utsname_machine": "x86_64",
    "utsname_release": "5.10.0-11-amd64",
    "utsname_sysname": "Linux",
    "utsname_version": "#1 SMP Debian 5.10.92-1 (2022-01-18)" 
}

Actions #1

Updated by Telemetry Bot over 1 year ago

  • Crash signature (v1) updated (diff)
  • Crash signature (v2) updated (diff)
  • Affected Versions v16.2.9 added
Actions

Also available in: Atom PDF