Actions
Bug #60113
opencrash: int64_t BlueFS::_read_random(BlueFS::FileReader*, uint64_t, uint64_t, char*): assert(r == 0)
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):
830b9f57748cbbd4e7ca7070630cf9b7bff4d419d8ecb72978c6c7c7b1d11ed6
Crash signature (v2):
Description
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::FilePrefetchBuffer::Prefetch(rocksdb::IOOptions const&, rocksdb::RandomAccessFileReader*, unsigned long, unsigned long, bool) rocksdb::FilePrefetchBuffer::TryReadFromCache(rocksdb::IOOptions const&, 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::InitDataBlock() rocksdb::BlockBasedTableIterator::FindBlockForward() rocksdb::BlockBasedTableIterator::FindKeyForward() rocksdb::BlockBasedTableIterator::Next() rocksdb::BlockBasedTableIterator::NextAndGetResult(rocksdb::IterateResult*) rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next() rocksdb::MergingIterator::Next() rocksdb::CompactionIterator::NextFromInput() 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*&)
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": 2094, "assert_msg": "os/bluestore/BlueFS.cc: In function 'int64_t BlueFS::_read_random(BlueFS::FileReader*, uint64_t, uint64_t, char*)' thread 7f754f4f3700 time 2022-12-21T13:01:07.573094+0800\nos/bluestore/BlueFS.cc: 2094: FAILED ceph_assert(r == 0)", "assert_thread_name": "rocksdb:low15", "backtrace": [ "/lib/x86_64-linux-gnu/libpthread.so.0(+0x13140) [0x7f756766f140]", "gsignal()", "abort()", "(ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x17e) [0x55a8aa84bfca]", "/usr/bin/ceph-osd(+0xc2310e) [0x55a8aa84c10e]", "(BlueFS::_read_random(BlueFS::FileReader*, unsigned long, unsigned long, char*)+0xd34) [0x55a8aaf77454]", "(BlueRocksRandomAccessFile::Read(unsigned long, unsigned long, rocksdb::Slice*, char*) const+0x20) [0x55a8aaf97c30]", "(rocksdb::LegacyRandomAccessFileWrapper::Read(unsigned long, unsigned long, rocksdb::IOOptions const&, rocksdb::Slice*, char*, rocksdb::IODebugContext*) const+0x58) [0x55a8ab4a019c]", "(rocksdb::RandomAccessFileReader::Read(rocksdb::IOOptions const&, unsigned long, unsigned long, rocksdb::Slice*, char*, std::unique_ptr<char [], std::default_delete<char []> >*, bool) const+0x9cd) [0x55a8ab8a5fd7]", "(rocksdb::FilePrefetchBuffer::Prefetch(rocksdb::IOOptions const&, rocksdb::RandomAccessFileReader*, unsigned long, unsigned long, bool)+0x47a) [0x55a8ab8a4fb0]", "(rocksdb::FilePrefetchBuffer::TryReadFromCache(rocksdb::IOOptions const&, unsigned long, unsigned long, rocksdb::Slice*, bool)+0x1d9) [0x55a8ab8a537b]", "(rocksdb::BlockFetcher::TryGetFromPrefetchBuffer()+0xed) [0x55a8ab776f53]", "(rocksdb::BlockFetcher::ReadBlockContents()+0x78) [0x55a8ab775df2]", "/usr/bin/ceph-osd(+0x1b1a799) [0x55a8ab743799]", "(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+0x447) [0x55a8ab7487c9]", "(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) [0x55a8ab74aaf9]", "(rocksdb::BlockBasedTableIterator::InitDataBlock()+0x1f7) [0x55a8ab8d756b]", "(rocksdb::BlockBasedTableIterator::FindBlockForward()+0x2a8) [0x55a8ab8d7bd2]", "(rocksdb::BlockBasedTableIterator::FindKeyForward()+0x8e) [0x55a8ab8d7926]", "(rocksdb::BlockBasedTableIterator::Next()+0x88) [0x55a8ab8d71ec]", "(rocksdb::BlockBasedTableIterator::NextAndGetResult(rocksdb::IterateResult*)+0x1d) [0x55a8ab8d721b]", "(rocksdb::IteratorWrapperBase<rocksdb::Slice>::Next()+0x62) [0x55a8ab56c6b4]", "(rocksdb::MergingIterator::Next()+0xaf) [0x55a8ab77ee47]", "(rocksdb::CompactionIterator::NextFromInput()+0xe3b) [0x55a8ab85083b]", "(rocksdb::CompactionIterator::Next()+0x246) [0x55a8ab84f46c]", "(rocksdb::CompactionJob::ProcessKeyValueCompaction(rocksdb::CompactionJob::SubcompactionState*)+0xf2e) [0x55a8ab863bda]", "(rocksdb::CompactionJob::Run()+0x236) [0x55a8ab8611d0]", "(rocksdb::DBImpl::BackgroundCompaction(bool*, rocksdb::JobContext*, rocksdb::LogBuffer*, rocksdb::DBImpl::PrepickedCompaction*, rocksdb::Env::Priority)+0x2609) [0x55a8ab50eacf]", "(rocksdb::DBImpl::BackgroundCallCompaction(rocksdb::DBImpl::PrepickedCompaction*, rocksdb::Env::Priority)+0x20d) [0x55a8ab50bc93]", "(rocksdb::DBImpl::BGWorkCompaction(void*)+0xca) [0x55a8ab50a57a]", "(void std::__invoke_impl<void, void (*&)(void*), void*&>(std::__invoke_other, void (*&)(void*), void*&)+0x34) [0x55a8ab7cb756]" ], "ceph_version": "17.2.5", "crash_id": "2022-12-21T05:01:07.628781Z_e4e512cf-3ff2-488c-99e4-dfaa85b601f4", "entity_name": "osd.cd9085d7b0f2be53fe83c26d29a653a2aac73bec", "os_id": "11", "os_name": "Debian GNU/Linux 11 (bullseye)", "os_version": "11 (bullseye)", "os_version_id": "11", "process_name": "ceph-osd", "stack_sig": "830b9f57748cbbd4e7ca7070630cf9b7bff4d419d8ecb72978c6c7c7b1d11ed6", "timestamp": "2022-12-21T05:01:07.628781Z", "utsname_machine": "x86_64", "utsname_release": "5.15.74-1-pve", "utsname_sysname": "Linux", "utsname_version": "#1 SMP PVE 5.15.74-1 (Mon, 14 Nov 2022 20:17:15 +0100)" }
Actions