From a5ecaa189d47a69466a6cd55fa4180e5c3092dc2 Mon Sep 17 00:00:00 2001 From: Samuel Just Date: Mon, 9 Feb 2015 10:37:15 -0800 Subject: [PATCH] ReplicatedPG::on_change: clean up callbacks_for_degraded_object Backport: dumpling, firefly, giant Fixes: 8753 Signed-off-by: Samuel Just --- src/osd/ReplicatedPG.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 7877b2e07ecd8..f582379f23c38 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -10450,6 +10450,13 @@ void ReplicatedPG::on_change(ObjectStore::Transaction *t) else p->second.clear(); } + for (map >::iterator i = + callbacks_for_degraded_object.begin(); + i != callbacks_for_degraded_object.end(); + ) { + finish_degraded_object((i++)->first); + } + assert(callbacks_for_degraded_object.empty()); if (is_primary()) { requeue_ops(waiting_for_cache_not_full); -- 2.47.3