]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: debug pending_creates_from_osd cleanup, don't use cbegin
authorSage Weil <sage@redhat.com>
Mon, 11 Jun 2018 22:26:01 +0000 (17:26 -0500)
committerSage Weil <sage@redhat.com>
Fri, 7 Sep 2018 17:08:41 +0000 (12:08 -0500)
Got a segv on the erase line :/

Signed-off-by: Sage Weil <sage@redhat.com>
src/osd/OSD.cc

index a7076cc535f11d79137396ecbbf0fe6ffe9909a2..b2ac08a573fe8f074978d236f3458350de57dfd4 100644 (file)
@@ -8051,9 +8051,11 @@ void OSD::consume_map()
   {
     // FIXME (as part of seastar rewrite): move to OSDShard
     [[gnu::unused]] auto&& pending_create_locker = guardedly_lock(pending_creates_lock);
-    for (auto pg = pending_creates_from_osd.cbegin();
-        pg != pending_creates_from_osd.cend();) {
+    for (auto pg = pending_creates_from_osd.begin();
+        pg != pending_creates_from_osd.end();) {
       if (osdmap->get_pg_acting_rank(pg->first, whoami) < 0) {
+       dout(10) << __func__ << " pg " << pg->first << " doesn't map here, "
+                << "discarding pending_create_from_osd" << dendl;
        pg = pending_creates_from_osd.erase(pg);
       } else {
        ++pg;