From afc891f7fcb000d106b1d722386f6d81ddeddab6 Mon Sep 17 00:00:00 2001 From: Jason Dillaman Date: Wed, 18 May 2016 11:01:22 -0400 Subject: [PATCH] rbd-mirror: additional debug messages during image replayer start/stop Signed-off-by: Jason Dillaman --- src/tools/rbd_mirror/ImageReplayer.h | 3 +++ src/tools/rbd_mirror/Replayer.cc | 13 +++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/tools/rbd_mirror/ImageReplayer.h b/src/tools/rbd_mirror/ImageReplayer.h index f832741e9ea11..3dc1287968303 100644 --- a/src/tools/rbd_mirror/ImageReplayer.h +++ b/src/tools/rbd_mirror/ImageReplayer.h @@ -101,6 +101,9 @@ public: virtual void handle_replay_ready(); virtual void handle_replay_complete(int r, const std::string &error_desc); + inline const std::string get_global_image_id() const { + return m_global_image_id; + } inline int64_t get_remote_pool_id() const { return m_remote_pool_id; } diff --git a/src/tools/rbd_mirror/Replayer.cc b/src/tools/rbd_mirror/Replayer.cc index 54a003d7044d7..fc92413f230b3 100644 --- a/src/tools/rbd_mirror/Replayer.cc +++ b/src/tools/rbd_mirror/Replayer.cc @@ -473,8 +473,13 @@ void Replayer::set_sources(const PoolImageIds &pool_image_ids) // pool has no mirrored images if (pool_image_ids.find(pool_id) == pool_image_ids.end()) { + dout(20) << "pool " << pool_id << " has no mirrored images" << dendl; for (auto images_it = pool_images.begin(); images_it != pool_images.end();) { + if (images_it->second->is_running()) { + dout(20) << "stop image replayer for " + << images_it->second->get_global_image_id() << dendl; + } if (stop_image_replayer(images_it->second)) { images_it = pool_images.erase(images_it); } else { @@ -495,6 +500,10 @@ void Replayer::set_sources(const PoolImageIds &pool_image_ids) images_it != pool_images.end();) { auto &image_ids = pool_image_ids.at(pool_id); if (image_ids.find(ImageIds(images_it->first)) == image_ids.end()) { + if (images_it->second->is_running()) { + dout(20) << "stop image replayer for " + << images_it->second->get_global_image_id() << dendl; + } if (stop_image_replayer(images_it->second)) { images_it = pool_images.erase(images_it); } else { @@ -563,6 +572,10 @@ void Replayer::set_sources(const PoolImageIds &pool_image_ids) it = pool_replayers.insert( std::make_pair(image_id.id, std::move(image_replayer))).first; } + if (!it->second->is_running()) { + dout(20) << "starting image replayer for " + << it->second->get_global_image_id() << dendl; + } start_image_replayer(it->second); } } -- 2.39.5