]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: PG::choose_acting: fix major iterator mistake
authorColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Fri, 17 Dec 2010 23:05:56 +0000 (15:05 -0800)
committerColin Patrick McCabe <cmccabe@alumni.cmu.edu>
Fri, 17 Dec 2010 23:14:53 +0000 (15:14 -0800)
Signed-off-by: Colin McCabe <colinm@hq.newdream.net>
src/osd/PG.cc

index e878d6c67374302a5c4794ff8535c330c95f5b48..0a61d128cb32a912b8ad2a611aec5908dac155b6 100644 (file)
@@ -1373,7 +1373,7 @@ bool PG::choose_acting(int newest_update_osd)
     Info& pi = (*p == osd->whoami) ? info : peer_info[*p];
     if (pi.last_update < primi.log_tail && !primi.log_backlog) {
       dout(10) << "choose_acting  osd" << *p << " needs primary backlog to catch up" << dendl;
-      want.erase(p);
+      p = want.erase(p);
     } else {
       dout(10) << "choose_acting  osd" << *p << " can catch up with osd" << want[0] << " log" << dendl;
       p++;