From: Yuval Lifshitz Date: Tue, 24 Jun 2025 10:02:57 +0000 (+0000) Subject: rgw/notifications: prevent infinite loop in case of malformed notifications X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=f6ad65a91468a3c6b78b212238cb10785f8ee05b;p=ceph.git rgw/notifications: prevent infinite loop in case of malformed notifications if we fail to decode a notification entry we should remove it. o/w we will keep failing on that entry Signed-off-by: Yuval Lifshitz --- diff --git a/src/rgw/driver/rados/rgw_notify.cc b/src/rgw/driver/rados/rgw_notify.cc index dec13d7630c78..dd735ebf005cc 100644 --- a/src/rgw/driver/rados/rgw_notify.cc +++ b/src/rgw/driver/rados/rgw_notify.cc @@ -213,8 +213,9 @@ private: try { decode(event_entry, iter); } catch (buffer::error& err) { - ldpp_dout(this, 5) << "WARNING: failed to decode entry. error: " << err.what() << dendl; - return EntryProcessingResult::Failure; + ldpp_dout(this, 1) << "WARNING: failed to decode entry marker: " << entry.marker + << ". error: " << err.what() << dendl; + return EntryProcessingResult::Expired; } if (event_entry.creation_time == ceph::coarse_real_clock::zero()) {