]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
Cleanup: delete find_best_info again 11932/head
authorTao Chang <changtao@hihuron.com>
Mon, 9 May 2016 13:50:17 +0000 (09:50 -0400)
committerNathan Cutler <ncutler@suse.com>
Sat, 12 Nov 2016 10:50:22 +0000 (11:50 +0100)
After called find_best_info find a auth_pg_shard, it must be not incomplete,
so it will not enter find_best_info again.

Signed-off-by: Tao Chang <changtao@hihuron.com>
(cherry picked from commit a25cfc4d46c03d8d78e0254c728ea5c29e2246e1)

Conflicts:
src/osd/PG.cc (trivial resolution)

src/osd/PG.cc

index b8e7f274a8b2d2f898617f6a2de8ab2b880585e9..730eb713a0644efcf0a5d500e03d45f4e6812603 100644 (file)
@@ -1278,25 +1278,7 @@ bool PG::choose_acting(pg_shard_t &auth_log_shard_id)
     return false;
   }
 
-  if ((up.size() &&
-      !all_info.find(up_primary)->second.is_incomplete() &&
-      all_info.find(up_primary)->second.last_update >=
-       auth_log_shard->second.log_tail) &&
-      auth_log_shard->second.is_incomplete()) {
-    map<pg_shard_t, pg_info_t> complete_infos;
-    for (map<pg_shard_t, pg_info_t>::const_iterator i = all_info.begin();
-        i != all_info.end();
-        ++i) {
-      if (!i->second.is_incomplete())
-       complete_infos.insert(*i);
-    }
-    map<pg_shard_t, pg_info_t>::const_iterator i = find_best_info(
-      complete_infos);
-    if (i != complete_infos.end()) {
-      auth_log_shard = all_info.find(i->first);
-    }
-  }
-
+  assert(!auth_log_shard->second.is_incomplete());
   auth_log_shard_id = auth_log_shard->first;
 
   // Determine if compatibility needed