From 4552354580c8825696dd3d3412a0ce7c214669b4 Mon Sep 17 00:00:00 2001 From: Igor Fedotov Date: Wed, 19 Jun 2019 17:26:25 +0300 Subject: [PATCH] os/bluestore/bluestore-tool: omit device from both source and taget lists when migrating. Signed-off-by: Igor Fedotov (cherry picked from commit 5ea89a4e0c2d6988156e76c074ae755632b51d53) --- src/os/bluestore/bluestore_tool.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/os/bluestore/bluestore_tool.cc b/src/os/bluestore/bluestore_tool.cc index 5e6b481cefd58..bdc5869b5120f 100644 --- a/src/os/bluestore/bluestore_tool.cc +++ b/src/os/bluestore/bluestore_tool.cc @@ -691,8 +691,14 @@ int main(int argc, char **argv) for (auto& s : devs_source) { auto i = cur_devs_map.find(s); if (i != cur_devs_map.end()) { - src_devs.emplace(*i); - src_dev_ids.emplace(i->second); + if (s == dev_target) { + cerr << "Device " << dev_target + << " is present in both source and target lists, omitted." + << std::endl; + } else { + src_devs.emplace(*i); + src_dev_ids.emplace(i->second); + } } else { cerr << "can't migrate " << s << ", not a valid bluefs volume " << std::endl; -- 2.39.5