]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: do not assert() in the case of no obc 39216/head
authormyoungwon oh <ohmyoungwon@gmail.com>
Thu, 1 Apr 2021 00:59:22 +0000 (09:59 +0900)
committermyoungwon oh <ohmyoungwon@gmail.com>
Thu, 8 Apr 2021 08:38:14 +0000 (17:38 +0900)
Upon rollback, we should handle ENOENT case,
so what we should do here is to return NOOP.

Signed-off-by: Myoungwon Oh <myoungwon.oh@samsung.com>
src/osd/PrimaryLogPG.cc

index c0968d008347018815a0e5129fb1c5d92496a6e8..c7d9a469aa17998f19e7089a469a2bd21e99bb71 100644 (file)
@@ -2468,7 +2468,11 @@ PrimaryLogPG::cache_result_t PrimaryLogPG::maybe_handle_manifest_detail(
   bool write_ordered,
   ObjectContextRef obc)
 {
-  ceph_assert(obc);
+  if (!obc) {
+    dout(20) << __func__ << ": no obc " << dendl;
+    return cache_result_t::NOOP;
+  }
+
   if (!obc->obs.oi.has_manifest()) {
     dout(20) << __func__ << ": " << obc->obs.oi.soid 
             << " is not manifest object " << dendl;