]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/ReplicatedPG: observed INCOMPLETE_CLONES when doing clone subsets
authorSage Weil <sage@redhat.com>
Thu, 24 Jul 2014 01:24:51 +0000 (18:24 -0700)
committerSage Weil <sage@redhat.com>
Sat, 2 Aug 2014 00:00:24 +0000 (17:00 -0700)
During recovery, we can clone subsets if we know that all clones will be
present.  We skip this on caching pools because they may not be; do the
same when INCOMPLETE_CLONES is set.

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 41364711a66c89ce2e94435fe0d54eeda6092614)

src/osd/ReplicatedPG.cc

index 8652fd3c5339b17b69795db1471b070b243fce8a..570b9853a9055c3e90ecdd5ce0ad53da4689b90a 100644 (file)
@@ -7710,8 +7710,8 @@ void ReplicatedBackend::calc_head_subsets(
   if (size)
     data_subset.insert(0, size);
 
-  if (get_parent()->get_pool().cache_mode != pg_pool_t::CACHEMODE_NONE) {
-    dout(10) << __func__ << ": caching enabled, skipping clone subsets" << dendl;
+  if (get_parent()->get_pool().allow_incomplete_clones()) {
+    dout(10) << __func__ << ": caching (was) enabled, skipping clone subsets" << dendl;
     return;
   }
 
@@ -7770,8 +7770,8 @@ void ReplicatedBackend::calc_clone_subsets(
   if (size)
     data_subset.insert(0, size);
 
-  if (get_parent()->get_pool().cache_mode != pg_pool_t::CACHEMODE_NONE) {
-    dout(10) << __func__ << ": caching enabled, skipping clone subsets" << dendl;
+  if (get_parent()->get_pool().allow_incomplete_clones()) {
+    dout(10) << __func__ << ": caching (was) enabled, skipping clone subsets" << dendl;
     return;
   }