From: myoungwon oh Date: Wed, 25 Feb 2026 12:58:53 +0000 (+0900) Subject: crimson/os/seastore: ensure extent is loaded if missing from cache X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=64c3b90e86a1c1837fe47a5a8eaa9229857fd5e0;p=ceph-ci.git crimson/os/seastore: ensure extent is loaded if missing from cache Signed-off-by: Myoungwon Oh --- diff --git a/src/crimson/os/seastore/omap_manager/log/log_manager.cc b/src/crimson/os/seastore/omap_manager/log/log_manager.cc index 73178502c41..6bb44feb78f 100644 --- a/src/crimson/os/seastore/omap_manager/log/log_manager.cc +++ b/src/crimson/os/seastore/omap_manager/log/log_manager.cc @@ -75,7 +75,12 @@ LogManager::omap_set_keys( // To find mutable extent in the same transaction ret = t.get_extent(ext->get_paddr(), &node); assert(ret == Transaction::get_extent_ret::PRESENT); - assert(node); + if (!node) { + // Do full reload if not cached + node = co_await log_load_extent( + t, ext->get_laddr(), BEGIN_KEY, END_KEY); + } + ceph_assert(node); LogNodeRef log_node = node->template cast(); bool can_ow = has_ow_key && log_node->can_ow(); if (can_ow) {