Re: mds client reconnect

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Oct 13, 2017 at 2:10 PM, Xiaoxi Chen <superdebuger@xxxxxxxxx> wrote:
>
> resend with plain txt
>
> 2017-10-13 10:56 GMT+08:00 Xiaoxi Chen <superdebuger@xxxxxxxxx>:
> > Hi,
> >
> >     We sometimes seen client (fs kernel) get evicted by MDS and try to
> > reconnect,  even we set  mds_session_blacklist_on_evict = True, client still
> > cannot reconnect due to below code:
> >
> >  if (!mds->is_reconnect() && mds->get_want_state() ==
> > CEPH_MDS_STATE_RECONNECT) {
> >     dout(10) << " we're almost in reconnect state (mdsmap delivery race?);
> > waiting" << dendl;
> >     mds->wait_for_reconnect(new C_MDS_RetryMessage(mds, m));
> >     return;
> >   }
> >
> >      Could someone share any insight on why MDS only accept reconnect in
> > reconnect state? and how, if the client is get evicted , can automatically
> > recovered? note that remount is usually impossible as umount will always
> > hang(due to cannot talk to mds).
> >

If reconnect get denied, unflushed dirty metadata on client get lost.

If mds_session_blacklist_on_evict is set to FALSE, recent version kernel client
should re-open session automatically after reconnect get denied. For
fuse client,
client_reconnect_stale need to be set to true.

FYI: 'umount -f' works for evicted client.



>
> >
> >
> > Xiaoxi
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux