s3:docs: add some advice for usage of strict allocate
[kai/samba.git] / docs-xml / smbdotconf / tuning / strictallocate.xml
1 <samba:parameter name="strict allocate"
2                  context="S"
3                                  type="boolean"
4                  xmlns:samba="http://www.samba.org/samba/DTD/samba-doc">
5 <description>
6     <para>This is a boolean that controls the handling of 
7     disk space allocation in the server. When this is set to <constant>yes</constant> 
8     the server will change from UNIX behaviour of not committing real
9     disk storage blocks when a file is extended to the Windows behaviour
10     of actually forcing the disk system to allocate real storage blocks
11     when a file is created or extended to be a given size. In UNIX
12     terminology this means that Samba will stop creating sparse files.
13     This can be slow on some systems. When you work with large files like
14     >100MB or so you may even run into problems with clients running into
15     timeouts.</para>
16
17     <para>When you have an extent based filesystem it's likely that we can make
18     use of unwritten extents which allows Samba to allocate even large ammounts
19     of space very fast and you will not see any timeout problems caused by
20     strict allocate. With strict allocate in use you will also get much better
21     out of quota messages in case you use quotas. Another advantage of
22     activating this setting is that it will help to reduce file
23     fragmentation.</para>
24
25     <para>To give you an idea on which filesystems this setting might currently
26     be a good option for you: XFS, ext4, btrfs, ocfs2 on Linux and JFS2 on
27     AIX support unwritten extents. On Filesystems that do not support it,
28     preallocation is probably an expensive operation where you will see reduced
29     performance and risk to let clients run into timeouts when creating large
30     files. Examples are ext3, ZFS, HFS+ and most others, so be aware if you
31     activate this setting on those filesystems.</para>
32
33 </description>
34
35 <value type="default">no</value>
36 </samba:parameter>