From: Xuehan Xu Date: Wed, 3 Jun 2026 02:09:12 +0000 (+0800) Subject: crimson/os/seastore/btree: correct the sync search of leaf nodes to do X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f6518525cd836ad1f9b7f3b1e532b33570e92bc3;p=ceph.git crimson/os/seastore/btree: correct the sync search of leaf nodes to do lower_bound instead of upper_bound Signed-off-by: Xuehan Xu --- diff --git a/src/crimson/os/seastore/btree/fixed_kv_btree.h b/src/crimson/os/seastore/btree/fixed_kv_btree.h index c31b713ecff..8e65e9e4e68 100644 --- a/src/crimson/os/seastore/btree/fixed_kv_btree.h +++ b/src/crimson/os/seastore/btree/fixed_kv_btree.h @@ -577,7 +577,7 @@ public: iter.leaf.node = child; } } - auto it = iter.leaf.node->upper_bound(addr); + auto it = iter.leaf.node->lower_bound(addr); iter.leaf.pos = it->get_offset(); SUBTRACET( seastore_fixedkv_tree, diff --git a/src/crimson/os/seastore/lba/btree_lba_manager.cc b/src/crimson/os/seastore/lba/btree_lba_manager.cc index f6e415c0e82..8dcb294be44 100644 --- a/src/crimson/os/seastore/lba/btree_lba_manager.cc +++ b/src/crimson/os/seastore/lba/btree_lba_manager.cc @@ -1139,6 +1139,7 @@ void BtreeLBAManager::update_paddr_sync( auto iter = btree.lower_bound_sync(c, laddr); assert(iter.get_leaf_node()->is_pending()); auto cursor = iter.get_cursor(c); + assert(cursor->get_laddr() == laddr); btree.update( c, std::move(iter),