]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
client: re-send requsets before composing the cap reconnect message 3802/head
authorYan, Zheng <zyan@redhat.com>
Wed, 25 Feb 2015 07:27:59 +0000 (15:27 +0800)
committerYan, Zheng <zyan@redhat.com>
Thu, 26 Feb 2015 04:13:31 +0000 (12:13 +0800)
commit286a8863ac82ef1d0a60011cf15192ff34397cf3
tree6255aa8b394fa14586fa0cb4d1d68958d197ecd0
parent32fd35508633d82c307cbc0f0da96467243fa6a7
client: re-send requsets before composing the cap reconnect message

After commit 419800fe (client: re-send request when MDS enters reconnecting
stage), cephfs client can send both unsafe requests and normal requests when
MDS is in reconnecting stage. Normal requests can have embedded cap releases,
the client code encodes these embedded cap releases after composing the cap
reconnect message. This causes the client sliently drop some caps. The fix
is re-send requsets (which add embedded cap releases) before composing the
cap reconnect message

Fixes: #10912
Signed-off-by: Yan, Zheng <zyan@redhat.com>
(cherry picked from commit 8ea5a811b3b32b99b65e6170976af3d42e6c9ba0)
src/client/Client.cc
src/client/Client.h
src/mds/Server.cc