Re: recover_session default behavior

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

 



On Mon, 2020-05-18 at 10:21 -0700, Patrick Donnelly wrote:
> On Mon, May 18, 2020 at 9:56 AM Ken Dreyer <kdreyer@xxxxxxxxxx> wrote:
> > Hi folks,
> > 
> > I was reading https://ceph.io/community/automatic-cephfs-recovery-after-blacklisting/
> > about the new recover_session=clean feature.
> > 
> > The end of that blog post says that this setting involves a trade-off:
> > "availability is more important than correctness"
> > 
> > Are there cases where the old behavior is really safer than simply
> > returning errors?
> 
> Basically: a frozen (hung mount) or dead (restarted box) application
> can't have unintended side-effects. If the application is poorly
> written to not handle I/O errors or to not fsync, then any undesirable
> behavior resulting from that may occur after the mount reconnects.
> 

Right. It's not so much a problem with correctness, but rather that a
misbehaving client could continue to hammer the MDS in this situation.

> > It seems like this feature would not make things worse for
> > applications. Can we make recover_session=clean the default?
> 
> There was a proposal for recover_session=strict which would (IIRC)
> basically kill any application that had any file descriptor open with
> the backend file system. That would probably be the safest default but
> also the most intrusive and (perhaps) surprising. Unfortunately, I
> think there were implementation issues that blocked it and we tabled
> the idea.
> 

Killing tasks from the kernel is somewhat perilous. There's also no
guarantee that it will help anything, particularly if the application is
restarted (a'la systemd or something).

> Whether or not recover_session=clean should be the default is
> undecided. I think we should wait to hear back from the community
> testing it before deciding.
> 

Yes. I think we have to proceed with caution when it comes to making
user-visible behavior changes like this.
-- 
Jeff Layton <jlayton@xxxxxxxxxx>
_______________________________________________
Dev mailing list -- dev@xxxxxxx
To unsubscribe send an email to dev-leave@xxxxxxx



[Index of Archives]     [CEPH Users]     [Ceph Devel]     [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