Skip to content

Commit 1f63119

Browse files
authored
Merge pull request ceph#57890 from aclamk/fix-aclamk-66361
os/bluestore: Fix ExtentDecoderPartial::_consume_new_blob
2 parents fe2bc06 + e59495b commit 1f63119

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

src/os/bluestore/BlueStore.cc

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -19574,20 +19574,20 @@ void BlueStore::ExtentDecoderPartial::_consume_new_blob(bool spanning,
1957419574
}
1957519575
} else {
1957619576
auto it = sb_info.find(sbid);
19577-
if (it == sb_info.end()) {
19578-
derr << __func__ << " shared blob not found:" << sbid
19579-
<< dendl;
19580-
}
19581-
auto &sbi = *it;
19582-
auto pool_id = oid.hobj.get_logical_pool();
19583-
if (sbi.pool_id == sb_info_t::INVALID_POOL_ID) {
19584-
sbi.pool_id = pool_id;
19585-
size_t alloc_delta = sbi.allocated_chunks << min_alloc_size_order;
19586-
per_pool_statfs->allocated() += alloc_delta;
19587-
if (compressed) {
19588-
per_pool_statfs->compressed_allocated() += alloc_delta;
19589-
++stats.compressed_blob_count;
19577+
if (it != sb_info.end()) {
19578+
auto &sbi = *it;
19579+
auto pool_id = oid.hobj.get_logical_pool();
19580+
if (sbi.pool_id == sb_info_t::INVALID_POOL_ID) {
19581+
sbi.pool_id = pool_id;
19582+
size_t alloc_delta = sbi.allocated_chunks << min_alloc_size_order;
19583+
per_pool_statfs->allocated() += alloc_delta;
19584+
if (compressed) {
19585+
per_pool_statfs->compressed_allocated() += alloc_delta;
19586+
++stats.compressed_blob_count;
19587+
}
1959019588
}
19589+
} else {
19590+
derr << __func__ << " shared blob not found:" << sbid << dendl;
1959119591
}
1959219592
if (compressed) {
1959319593
per_pool_statfs->compressed() +=

0 commit comments

Comments
 (0)