VERITAS File System 4.1 Administrator's Guide

Extent Attributes
Attribute Specifics
Chapter 3 71
Reservation: Preallocating Space to a File
VxFS makes it possible to preallocate space to a file at the time of the request rather than
when data is written into the file. This space cannot be allocated to other files in the file
system. VxFS prevents any unexpected out-of-space condition on the file system by ensuring
that a file’s required space will be associated with the file before it is required.
Persistent reservation is not released when a file is truncated. The reservation must be
cleared or the file must be removed to free reserved space.
Fixed Extent Size
The VxFS default allocation policy uses a variety of methods to determine how to make an
allocation to a file when a write requires additional space. The policy attempts to balance the
two goals of optimum I/O performance through large allocations and minimal file system
fragmentation through allocation from space available in the file system that best fits the
data.
Setting a fixed extent size overrides the default allocation policies for a file and always serves
as a persistent attribute. Be careful to choose an extent size appropriate to the application
when using fixed extents. An advantage of VxFS’s extent based allocation policies is that they
rarely use indirect blocks compared to block based file systems; VxFS eliminates many
instances of disk access that stem from indirect references. However, a small extent size can
eliminate this advantage.
Files with aggressive allocation sizes tend to be more contiguous and have better I/O
characteristics. However, the overall performance of the file system degrades because the
unused space fragments free space by breaking large extents into smaller pieces. By erring on
the side of minimizing fragmentation for the file system, files may become so non-contiguous
that their I/O characteristics would degrade.
Fixed extent sizes are particularly appropriate in the following situations:
If a file is large and sparse and its write size is fixed, a fixed extent size that is a multiple
of the write size can minimize space wasted by blocks that do not contain user data as a
result of misalignment of write and extent sizes.
If a file is large and contiguous, a large fixed extent size can minimize the number of
extents in the file.
Custom applications may also use fixed extent sizes for specific reasons, such as the need to
align extents to cylinder or striping boundaries on disk.