Re: [Samba] sync always, strict sync, cache question

2008-09-17 Thread Chris Fanning
On Wed, Sep 17, 2008 at 2:38 AM, Jeremy Allison [EMAIL PROTECTED] wrote:
 On Tue, Sep 16, 2008 at 09:51:33AM -0700, Eric Roseme wrote:

 ---


 Samba defaults to asynchronous writes.  smbd writes to memory buffer,
 then returns to processing.  Buffer is flushed to disk later. This is
 the most efficient behavior.

 Windows CreateFile API has the FILE_FLAG_WRITE_THROUGH flag, which
 requests synchronous writes.  smbd writes to memory buffer, blocks until
 buffer contents are written to disk, which results in poor performance,
 but better data integrity.

 When strict sync = yes (default = no) Samba honors the
 FILE_FLAG_WRITE_THROUGH flag, and results in synchronous writes when
 called by the CreateFile API.

 When sync always = yes (default = no) Samba executes all writes
 synchronously. This requires that strict sync = yes.

 StrictSync  SyncAlways  ff_write_through   Sync-Writes
 no  no nono
 yes no nono
 yes no yes   Yes (slow)
 no  yesyes   no
 yes yesyes/noyes (very slow)

 Eric Roseme

 Great summation Eric, nothing has changed since then so
 it's still accurate !

 Thanks,

Jeremy.


Thank you both for the professional reply.
Unfortunately, you have confirmed my suspicions. :)

I think I'll head back to NFS and give it another try. They too on the
list are very helpful.

Viva GNU!
Chris.
-- 
To unsubscribe from this list go to the following URL and read the
instructions:  https://lists.samba.org/mailman/listinfo/samba


Re: [Samba] sync always, strict sync, cache question

2008-09-16 Thread Eric Roseme



Chris Fanning wrote:

snip

But I am worried about the cache that Samba makes use of. We would
like samba to write to disk immediately.
We've found these two options for smb.conf

sync always = yes
strict sync = yes

I can't quiet see the difference between the two in my case.
If I set 'sync always = yes' _or_ 'strict sync = yes', I can copy
files at 70MB/s (similar to NFS using async).
If I set both options, file transfer speed drops to about 20MB/s

Does that mean that I do need to set both options to ensure the cache
is written to disk before the server returns the ok to the client?
How could I test this?

And now while I'm here ;) , does anyone have any other recommendations
for this kind of setup?

Thanks,
Chris.
Hi Chris,  I did an investigation on this in 2003.  Here are the 
results.  Not sure if things have changed since then.

---


Samba defaults to asynchronous writes.  smbd writes to memory buffer, 
then returns to processing.  Buffer is flushed to disk later. This is 
the most efficient behavior.


Windows CreateFile API has the FILE_FLAG_WRITE_THROUGH flag, which 
requests synchronous writes.  smbd writes to memory buffer, blocks until 
buffer contents are written to disk, which results in poor performance, 
but better data integrity.


When strict sync = yes (default = no) Samba honors the 
FILE_FLAG_WRITE_THROUGH flag, and results in synchronous writes when 
called by the CreateFile API.


When sync always = yes (default = no) Samba executes all writes 
synchronously. This requires that “strict sync = yes”.


StrictSync  SyncAlways  ff_write_through   Sync-Writes
no  no nono
yes no nono
yes no yes   Yes (slow)
no  yesyes   no
yes yesyes/noyes (very slow)

Eric Roseme

--
To unsubscribe from this list go to the following URL and read the
instructions:  https://lists.samba.org/mailman/listinfo/samba


Re: [Samba] sync always, strict sync, cache question

2008-09-16 Thread Jeremy Allison
On Tue, Sep 16, 2008 at 09:51:33AM -0700, Eric Roseme wrote:

 ---


 Samba defaults to asynchronous writes.  smbd writes to memory buffer,  
 then returns to processing.  Buffer is flushed to disk later. This is  
 the most efficient behavior.

 Windows CreateFile API has the FILE_FLAG_WRITE_THROUGH flag, which  
 requests synchronous writes.  smbd writes to memory buffer, blocks until  
 buffer contents are written to disk, which results in poor performance,  
 but better data integrity.

 When strict sync = yes (default = no) Samba honors the  
 FILE_FLAG_WRITE_THROUGH flag, and results in synchronous writes when  
 called by the CreateFile API.

 When sync always = yes (default = no) Samba executes all writes  
 synchronously. This requires that “strict sync = yes”.

 StrictSync  SyncAlways  ff_write_through   Sync-Writes
 no  no nono
 yes no nono
 yes no yes   Yes (slow)
 no  yesyes   no
 yes yesyes/noyes (very slow)

 Eric Roseme

Great summation Eric, nothing has changed since then so
it's still accurate !

Thanks,

Jeremy.
-- 
To unsubscribe from this list go to the following URL and read the
instructions:  https://lists.samba.org/mailman/listinfo/samba