]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
crimson/os/seastore: implement OP_MERGE_COLLECTION 68750/head
authorKefu Chai <k.chai@proxmox.com>
Tue, 5 May 2026 06:53:54 +0000 (14:53 +0800)
committerKefu Chai <k.chai@proxmox.com>
Tue, 5 May 2026 11:45:58 +0000 (19:45 +0800)
commit9fa5e520f1af38df9960378afdd6c751e25ee6fb
treee7a76195461794913979d68ad30e0b5ea4b3139c
parent59dd31b71a5d045400133b3da3637fd0fa6f1123
crimson/os/seastore: implement OP_MERGE_COLLECTION

Add a handler for Transaction::OP_MERGE_COLLECTION in SeaStore's
_do_transaction_step() and the corresponding _merge_collection()
implementation. Since coll_t is not part of the onode key, no
onode re-keying is needed: the operation updates the destination
collection's split_bits and removes the source collection from the
collection B-tree, all within a single transaction.

Signed-off-by: Kefu Chai <k.chai@proxmox.com>
src/crimson/os/seastore/seastore.cc
src/crimson/os/seastore/seastore.h
src/test/crimson/seastore/test_seastore.cc