]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgwlc: warn on missing RGW_ATTR_LC 45498/head
authorMatt Benjamin <mbenjamin@redhat.com>
Fri, 24 Dec 2021 19:35:00 +0000 (14:35 -0500)
committerCory Snyder <csnyder@iland.com>
Thu, 17 Mar 2022 13:35:59 +0000 (09:35 -0400)
This should not happen.  If it does (e.g., due to damaged bucket_info),
log the event to assist with debugging.

Fixes: https://tracker.ceph.com/issues/53728
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
(cherry picked from commit ae1a75c09d11d8f0b626c781112c35de353c0c89)

src/rgw/rgw_lc.cc

index ea1609bdb9d4f14d28068c9732202f4f07acb974..a819d61777800886a9cf33775a7b9ad686862ac8 100644 (file)
@@ -1749,9 +1749,14 @@ int RGWLC::bucket_lc_process(string& shard_id, LCWorker* worker,
     return -ENOENT;
   }
 
-  map<string, bufferlist>::iterator aiter = bucket->get_attrs().find(RGW_ATTR_LC);
-  if (aiter == bucket->get_attrs().end())
+  map<string, bufferlist>::iterator aiter
+    = bucket->get_attrs().find(RGW_ATTR_LC);
+  if (aiter == bucket->get_attrs().end()) {
+    ldpp_dout(this, 0) << "WARNING: bucket_attrs.find(RGW_ATTR_LC) failed for "
+                      << bucket_name << " (terminates bucket_lc_process(...))"
+                      << dendl;
     return 0;
+  }
 
   bufferlist::const_iterator iter{&aiter->second};
   try {