From: Kefu Chai Date: Sat, 30 May 2026 07:49:18 +0000 (+0800) Subject: rgw/posix: fix event replay in BucketCache ev_loop X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=8e1ee45489de7014d995bfb161fba15fa2484958;p=ceph.git rgw/posix: fix event replay in BucketCache ev_loop evec is never cleared after each n->notify() call, so events accumulate across iterations of ev_loop's inner for loop. Each notify() call receives not just the current event but all events dispatched in earlier iterations too. Add evec.clear() after each n->notify() call. Signed-off-by: Kefu Chai --- diff --git a/src/rgw/driver/posix/notify.h b/src/rgw/driver/posix/notify.h index bdfd5ec582a..d840932f8bd 100644 --- a/src/rgw/driver/posix/notify.h +++ b/src/rgw/driver/posix/notify.h @@ -204,6 +204,7 @@ namespace file::listing { } /* !overflow */ if (evec.size() > 0) { n->notify(watch_name, watch_opaque, evec); + evec.clear(); } } /* events */ } /* n > 0 */