From b496db6f64faadbe93a39dad6ba828b427bd79d8 Mon Sep 17 00:00:00 2001 From: Matt Benjamin Date: Fri, 24 Dec 2021 14:35:00 -0500 Subject: [PATCH] rgwlc: warn on missing RGW_ATTR_LC 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 (cherry picked from commit ae1a75c09d11d8f0b626c781112c35de353c0c89) --- src/rgw/rgw_lc.cc | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/rgw/rgw_lc.cc b/src/rgw/rgw_lc.cc index ea1609bdb9d4..a819d6177780 100644 --- a/src/rgw/rgw_lc.cc +++ b/src/rgw/rgw_lc.cc @@ -1749,9 +1749,14 @@ int RGWLC::bucket_lc_process(string& shard_id, LCWorker* worker, return -ENOENT; } - map::iterator aiter = bucket->get_attrs().find(RGW_ATTR_LC); - if (aiter == bucket->get_attrs().end()) + map::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 { -- 2.47.3