A method, system, apparatus, and computer-readable medium are provided for
dynamically provisioning available space in a data storage system without
having to configure partitions at system startup. According to one
method, a system table is maintained that includes entries corresponding
to provisions within the available physical capacity of a data storage
system. A volume table is also maintained that includes entries
corresponding to territories within a logical data storage volume. When a
data write operation is requested, a determination is made as to whether
physical space has been allocated for the territory in the volume that is
to be written. If physical space has not yet been allocated, the
necessary physical space is allocated for the territory within the
logical volume that is to receive the written data by creating a pointer
to an available entry in the system table in an entry in the volume table
corresponding to the territory to be written. Once the physical space has
been allocated, the requested write operation is performed. Metadata is
written to disk in a fashion that makes it easy to recover from system
crashes and unclean shutdowns.