]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mds: fix slave commit tracking
authorYan, Zheng <zheng.z.yan@intel.com>
Wed, 15 May 2013 08:35:39 +0000 (16:35 +0800)
committerYan, Zheng <zheng.z.yan@intel.com>
Tue, 28 May 2013 05:57:21 +0000 (13:57 +0800)
commit7a6ec35367fa9a8f5728201efc0a42119fac884c
tree293a71495db6fd2197252f01f03899c8e19dff4a
parent0c1ca8edda43b39878c29d65a577691db7e49a08
mds: fix slave commit tracking

MDS may crash after journalling a slave commit, but before sending
commit ack to the master. Later when the MDS restarts, it will not
send commit ack to the master. So the master waits for the commit
ack forever. The fix is remove failed MDS from requests' uncommitted
slave list. When failed MDS recovers, its resolve message will tell
the master which slave requests are not committed. The master will
re-add the recovering MDS to requests' uncommitted slave list if
necessary.

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