Skip to main content

The life of a file

These pages describe one file, from the call that creates the file to the moment its space is available again.

What the class promises and what the chunks do covers the distinction these pages use. A Storage Class is a promise made about a file, but everything that keeps the promise happens to one chunk at a time. From creation to the first chunk covers what a create records and what the first write adds to that record. Length, holes and truncation covers the file length the Master Server keeps and how far that length may point past the chunks. Names: link, unlink, rename, and exchange covers the operations that work on a name rather than on the file that the name refers to. Timestamps covers which operation changes which of the three timestamps.

The remaining pages describe what may happen to the file and how its life ends. Snapshot copy-on-write semantics covers what sharing chunks with a snapshot costs at the first write. Quota enforcement covers the operations at which the limits are tested. Trash retention and its memory cost covers what a deleted file keeps occupying until its retention runs out. Deletion covers the four mechanisms between an unlink and free disk space.