]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
crimson/os/seastore: initialize tests in seastar reactor 43681/head
authorYingxin Cheng <yingxin.cheng@intel.com>
Wed, 27 Oct 2021 06:39:10 +0000 (14:39 +0800)
committerYingxin Cheng <yingxin.cheng@intel.com>
Wed, 27 Oct 2021 07:46:45 +0000 (15:46 +0800)
commitf73bc6a3752297c5c8e9d89a0ed234c1754bd213
tree115ef565e97fbaeef4cffc81993f36d4a982413d
parentfa4d1316c956e86bdde7833eef9f2f4a08a58d5c
crimson/os/seastore: initialize tests in seastar reactor

testing::Test from gtest is constructed and destructed outside seastar
application. It is unexpected for most seastore components, and causing
undefined behaviors.

For example, when registering metrics during construction, the logic
needs to be called inside seastar reactor thread because metrics are
maintained in reactor thread-local variables.

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
src/test/crimson/seastore/onode_tree/test_staged_fltree.cc
src/test/crimson/seastore/test_btree_lba_manager.cc
src/test/crimson/seastore/test_randomblock_manager.cc
src/test/crimson/seastore/test_seastore.cc
src/test/crimson/seastore/test_seastore_cache.cc
src/test/crimson/seastore/test_seastore_journal.cc
src/test/crimson/seastore/transaction_manager_test_state.h