]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: safely requeue waiting_for_ondisk waiters on_role_change
authorSage Weil <sage@newdream.net>
Fri, 2 Dec 2011 23:25:37 +0000 (15:25 -0800)
committerSage Weil <sage@newdream.net>
Fri, 2 Dec 2011 23:27:38 +0000 (15:27 -0800)
This could conceivably cause the reply ordering mismatch seen in bug
#1490.  Not sure why we didn't also fix this caller when we fixed that
bug last time :).

Signed-off-by: Sage Weil <sage@newdream.net>
src/osd/ReplicatedPG.cc

index 1e705d15188ba9091b4c650be728434c38df1ff7..1e488b979289247b009976e6587a6cbad6cde33e 100644 (file)
@@ -4747,7 +4747,7 @@ void ReplicatedPG::on_role_change()
   for (map<eversion_t, list<Message*> >::iterator p = waiting_for_ondisk.begin();
        p != waiting_for_ondisk.end();
        p++)
-    osd->take_waiters(p->second);
+    osd->requeue_ops(this, p->second);
   waiting_for_ondisk.clear();
 }