From 8ec8f1175a129624dffb511782664d74966d3c42 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 (cherry picked from commit a5ecaa189d47a69466a6cd55fa4180e5c3092dc2) --- src/osd/ReplicatedPG.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index f1911c13f94..65f0607f0bb 100644 --- a/src/osd/ReplicatedPG.cc +++ b/src/osd/ReplicatedPG.cc @@ -9494,6 +9494,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