]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd/PrimaryLogPG: find_object_context: drop !head_exists path
authorSage Weil <sage@redhat.com>
Fri, 1 Sep 2017 17:37:48 +0000 (13:37 -0400)
committerSage Weil <sage@redhat.com>
Thu, 21 Sep 2017 18:29:34 +0000 (14:29 -0400)
Signed-off-by: Sage Weil <sage@redhat.com>
src/osd/PrimaryLogPG.cc

index 6588da6ee8a1baae9a3c9896044cc757daf066ce..ae08d738d095b9cf5a2e634f8a7b5446b1f09f39 100644 (file)
@@ -9716,27 +9716,19 @@ int PrimaryLogPG::find_object_context(const hobject_t& oid,
  
   // head?
   if (oid.snap > ssc->snapset.seq) {
-    if (ssc->snapset.head_exists) {
-      ObjectContextRef obc = get_object_context(head, false);
-      dout(10) << "find_object_context  " << head
-              << " want " << oid.snap << " > snapset seq " << ssc->snapset.seq
-              << " -- HIT " << obc->obs
-              << dendl;
-      if (!obc->ssc)
-       obc->ssc = ssc;
-      else {
-       assert(ssc == obc->ssc);
-       put_snapset_context(ssc);
-      }
-      *pobc = obc;
-      return 0;
-    }
+    ObjectContextRef obc = get_object_context(head, false);
     dout(10) << "find_object_context  " << head
             << " want " << oid.snap << " > snapset seq " << ssc->snapset.seq
-            << " but head dne -- DNE"
+            << " -- HIT " << obc->obs
             << dendl;
-    put_snapset_context(ssc);
-    return -ENOENT;
+    if (!obc->ssc)
+      obc->ssc = ssc;
+    else {
+      assert(ssc == obc->ssc);
+      put_snapset_context(ssc);
+    }
+    *pobc = obc;
+    return 0;
   }
 
   // which clone would it be?