]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mds: fix 'discover' handling in the rejoin stage
authorYan, Zheng <zheng.z.yan@intel.com>
Sun, 27 Jan 2013 07:14:55 +0000 (15:14 +0800)
committerYan, Zheng <zheng.z.yan@intel.com>
Tue, 29 Jan 2013 02:17:37 +0000 (10:17 +0800)
commite69e7e5d0eae6581049d22c07ea3cda773c80f13
tree32812e665d6c093e07de1a83420e0617f461bc1b
parent0e9c8124a1acfcd52cf2712e59dc8493209b42c6
mds: fix 'discover' handling in the rejoin stage

If the MDS is the resolve stage, current MDCache::handle_discover() only handles
'discover' from MDS that it has already gotten rejoin acknowledgement. This can
cause circular wait because MDCache::rejoin_gather_finish() fetches reconnected
inodes before send rejoin acknowledgements, and fetching reconnected inode may
triggers 'discover'. The fix is not delay handling 'discover' from MDS that are
also in the rejoin stage.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
src/mds/MDCache.cc