From: Samuel Just Date: Mon, 9 Feb 2015 18:37:15 +0000 (-0800) Subject: ReplicatedPG::on_change: clean up callbacks_for_degraded_object X-Git-Tag: v0.93~60^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a5ecaa189d47a69466a6cd55fa4180e5c3092dc2;p=ceph.git ReplicatedPG::on_change: clean up callbacks_for_degraded_object Backport: dumpling, firefly, giant Fixes: 8753 Signed-off-by: Samuel Just --- diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc index 7877b2e07ecd..f582379f23c3 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);