]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
mds: do files recovery after processing cap flushes
authorYan, Zheng <zyan@redhat.com>
Wed, 29 Jun 2016 03:42:42 +0000 (11:42 +0800)
committerYan, Zheng <zyan@redhat.com>
Fri, 15 Jul 2016 01:11:49 +0000 (09:11 +0800)
commitdd98448d3d0bbb7d338f03f7ad1e40f217eebe0d
tree690240c67bdad72e5c1aec3e39d42dd083d72055
parent57067e032e84bbdb69c499aa7ea93ca68082569b
mds: do files recovery after processing cap flushes

File recovery may update inode and trigger inode COW. MDS relies on
client caps to setup CInode::client_need_snapflush. But for a given
client, the reconnected caps may not include the flushing caps.
(Before MDS failover, client released and flushed some caps at the
same time. When MDS recovers, client re-send the cap flush and send
cap reconnect to the MDS.) This may cause later snapflush to get
dropped.

Signed-off-by: Yan, Zheng <zyan@redhat.com>
src/mds/MDCache.cc
src/mds/MDCache.h
src/mds/MDSRank.cc