OpLocks and file sizes.
Christopher R. Hertel
crh at ubiqx.mn.org
Tue Mar 27 10:23:21 MDT 2012
On 03/27/2012 12:24 AM, Ira Cooper wrote:
> On Tue, Mar 27, 2012 at 12:37 AM, Christopher R. Hertel <crh at ubiqx.mn.org>wrote:
>> On 03/26/2012 09:21 PM, Richard Sharpe wrote:
>>> On Mon, 26 Mar 2012, Christopher R. Hertel wrote:
>>>> Some quick OpLock questions...
>>>> Say we've got a file with an exclusive OpLock, and the client is
>>>> to the end of the file (making it a bigger file, of course). In that
>>>> the server won't know the new size of the file until the writes have
>>>> flushed to the server, which would happen on close or OpLock break.
>>> My experience is that Windows does a one-byte write to extend the actual
>>> size of the file to the end of each write that would extend the file,
>>> though the data goes into the local cache.
>>> This has the advantage that ENOSPC can be reported sooner than file
>> close time.
>> That's what I thought might happen, but I don't recall it being there in
>> Anyone else have any clues on this?
> No, but I have a good question: How would all this interact with platforms
> that use compression on their filesystems? Any ZFS using platform would
> run into this issue if they enable compression.
Question on compression in ZFS:
Does ZFS support quotas and compression within the same file systems?
If so, does the real size or compressed size count against the quota?
Clearly there are some semantic issues that need to be figured out.
I will see what the docs have to say and post what I find.
The semantics that NFSv4 requires may conflict with the semantics
that SMB1/SMB2 require. That's the issue we're trying to figure out.
"Implementing CIFS - the Common Internet FileSystem" ISBN: 013047116X
Samba Team -- http://www.samba.org/ -)----- Christopher R. Hertel
jCIFS Team -- http://jcifs.samba.org/ -)----- ubiqx development, uninq.
ubiqx Team -- http://www.ubiqx.org/ -)----- crh at ubiqx.mn.org
OnLineBook -- http://ubiqx.org/cifs/ -)----- crh at ubiqx.org
More information about the samba-technical