]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
crimson/os/seastore: construct TransactionManager classes after device mount
authorYingxin Cheng <yingxin.cheng@intel.com>
Sun, 7 Aug 2022 08:05:42 +0000 (16:05 +0800)
committerYingxin Cheng <yingxin.cheng@intel.com>
Thu, 11 Aug 2022 01:16:57 +0000 (09:16 +0800)
commitc1451ea279caab3374492877ce2d8479370e60fe
treea5ca389e5423a62ff5b0c99be3464e01d2ce7f2f
parentaf3364cc65ed1bc298cb90d1e985fd904b781e10
crimson/os/seastore: construct TransactionManager classes after device mount

To construct TransactionManager after all the devices are discoverred.

Also, it makes the following cleanups possible:
* Cleanup SeaStore and TransactionManager factory methods.
* Decouple TransactionManager from SegmentManagerGroup.
* Drop the unnecessary tm_make_config_t.
* Drop the unnecessary add_device() methods.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
src/crimson/os/seastore/extent_placement_manager.h
src/crimson/os/seastore/journal/circular_bounded_journal.h
src/crimson/os/seastore/seastore.cc
src/crimson/os/seastore/seastore.h
src/crimson/os/seastore/transaction_manager.cc
src/crimson/os/seastore/transaction_manager.h
src/crimson/tools/store_nbd/tm_driver.cc
src/test/crimson/seastore/onode_tree/test_fltree_onode_manager.cc
src/test/crimson/seastore/test_transaction_manager.cc
src/test/crimson/seastore/transaction_manager_test_state.h