From: Zhang Song Date: Wed, 1 Mar 2023 10:19:54 +0000 (+0800) Subject: crimson/os/seasotre/segment_manager_group: ensure the types of devices are same X-Git-Tag: v19.0.0~1546^2~2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=61156355385aaa06cf9d15870a8830256874714d;p=ceph.git crimson/os/seasotre/segment_manager_group: ensure the types of devices are same Signed-off-by: Zhang Song --- diff --git a/src/crimson/os/seastore/segment_manager_group.h b/src/crimson/os/seastore/segment_manager_group.h index 9a5729515b8db..bd5af9601a567 100644 --- a/src/crimson/os/seastore/segment_manager_group.h +++ b/src/crimson/os/seastore/segment_manager_group.h @@ -35,6 +35,11 @@ public: void add_segment_manager(SegmentManager* segment_manager) { auto device_id = segment_manager->get_device_id(); ceph_assert(!has_device(device_id)); + if (!device_ids.empty()) { + auto existing_id = *device_ids.begin(); + ceph_assert(segment_managers[existing_id]->get_device_type() + == segment_manager->get_device_type()); + } segment_managers[device_id] = segment_manager; device_ids.insert(device_id); }