]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: RGWSI_SysObj_Cache::remove() invalidates after successful delete 55718/head
authorCasey Bodley <cbodley@redhat.com>
Sun, 18 Feb 2024 15:29:13 +0000 (10:29 -0500)
committerCasey Bodley <cbodley@redhat.com>
Thu, 22 Feb 2024 17:14:31 +0000 (12:14 -0500)
commit1a76fa5af33cbcc88a8933e5866123b742738712
tree7b4c9bb08233bf7b10738066ef7c0925f78b2ac2
parent9a2d8e316943571ad68123c54e418c08baf4ee39
rgw: RGWSI_SysObj_Cache::remove() invalidates after successful delete

invalidating the cache before the librados delete means that a racing call
to `RGWSI_SysObj_Cache::read()` may succeed and repopulate the cache. in
that case, subsequent reads will continue to return cached data even after
the librados delete succeeds

Fixes: https://tracker.ceph.com/issues/64480
Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 0eebbc3f02ad153d41d23de227bd989da50e54cf)

Conflicts: RGWSysObjectCtxBase argument not present on reef/squid
src/rgw/services/svc_sys_obj_cache.cc
src/rgw/services/svc_sys_obj_cache.cc