[RFC PATCH] smbd: resilient file handle support
Uri Simchoni
uri at samba.org
Fri Feb 12 13:10:45 UTC 2016
On 02/12/2016 12:38 AM, Michael Adam wrote:
> On 2016-02-11 at 23:42 +0200, Uri Simchoni wrote:
>> Hi,
>>
>> Attached pls find a patch for supporting resilient file
>> handles. Comments are welcome. It doesn't include tests yet,
>> but I would appreciate technical feedback and any other
>> feedback.
> Cool!
>
> A few comments up front before digging deeper into the
> actual patches.
>
> Note the hacked up implementation (by metze) in the
> master-multi-channel-obnox branch:
>
> https://git.samba.org/?p=obnox/samba/samba-obnox.git;a=commitdiff;h=8e68d390dc640ceb3aa9594c9d18d5d3d01c24f2
>
> samba.org/?p=obnox/samba/samba-obnox.git;a=shortlog;h=refs/heads/master-multi-channel-obnox
OK that looks like a "fake resilient" implementation.
> <snip>
>
> One main difference is that while durable handles are purely
> best effort, i.e. when a second client tries to open a file
> with a disconnected durable handle, that handle is closed
> and the original opener can not reconnect it. For resilient
> handles, there are iirc (need to look up the exact details),
> certain weak guarantees where new openers are blocked for
> a short disconnected time. The same is true for persistent
> handles, but with stronger guarantees and you can also get
> them without oplocks, on a scale-out share.
>
> I think implementing these guarantees is the major challenge
> in implementing resilient and durable handles.
>
> <snip>
> Cheers - Michael
>
>
Thanks so much for summarizing what resilient handles are in technical
terms - I could not find such a concise description anywhere so I tried
to dig it from [MS-SMB2].
It looks like I got the differences-from-durable right (in my a-b-c
list), but may be way off-base claiming that Samba's durable handles are
already "resilient in disguise" (in that the original opener of a Samba
durable handle can reconnect to it if someone else has opened the file
while being disconnected).
I'll dig deeper, but probably you and others in the team can easily tell
the right answer.
Thanks,
Uri.
More information about the samba-technical
mailing list