]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
test/crimson/seastore: assert omap extent retirement on split/merge/balance 69482/head
authorShai Fultheim <shai.fultheim@gmail.com>
Thu, 11 Jun 2026 18:56:06 +0000 (21:56 +0300)
committerShai Fultheim <shai.fultheim@gmail.com>
Thu, 18 Jun 2026 10:55:49 +0000 (13:55 +0300)
commitd3cada2c858b3190bb4c2f64e55a1a42bf455ad2
treebaf47825af1821040e8cf0b37371ae3fb5122387
parent3d0188f3c6fdf180db97057cde29efbd4fb8b996
test/crimson/seastore: assert omap extent retirement on split/merge/balance

There was no coverage for extent leaks or double-frees during structural
omap B-tree transitions. While investigating a suspected extent leak, these
assertions were added and confirmed the caller-layer (parent-node) already
retires nodes correctly — no leak and no double-free.

Add count_live_omap_extents() to omap_manager_test_t, which scans the LBA
mapping space via scan_mapped_space() to count live OMAP_INNER/OMAP_LEAF
extents, and assert against it in leafnode/innernode_split_merge_balancing:
the live count returns to baseline after contraction, and is exactly 0 after
clearing the tree. This pins the caller-layer (parent-node) retirement
contract in CI.

Signed-off-by: Shai Fultheim <shai.fultheim@gmail.com>
src/test/crimson/seastore/test_omap_manager.cc