]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
osd/ReplicatedPG: EBUSY on cache-evict when watchers are present
authorSage Weil <sage@inktank.com>
Sat, 14 Dec 2013 00:39:02 +0000 (16:39 -0800)
committerSage Weil <sage@inktank.com>
Fri, 20 Dec 2013 00:40:01 +0000 (16:40 -0800)
commit1403798327bcefac72244d623873f3ec78ad25fd
tree75f1cc990155ee7fbc5d531f2152865c8d94a175
parent9ed6679a94089050d5081e76784780a5102ad213
osd/ReplicatedPG: EBUSY on cache-evict when watchers are present

Linger operations will follow the object to the cache pool when the pool
overlay process is set.  If we evict the object, the object_info_t will
go away along with the watch state and confusing things will happen.
Prevent that from happening by returning EBUSY when you try to evict a
watched object.

Note that you *can* flush a watched object, and the dirty flag will be
cleared.  But you still can't evict it.

Signed-off-by: Sage Weil <sage@inktank.com>
src/osd/ReplicatedPG.cc