Next: The recovery procedure.
Up: Recovery
Previous: Warming the cache.
Hummingbird does not change disk contents
immediately for file and cluster deletions.
Research with journalling file systems has shown that hard meta-data update
persistence is expensive, due to the necessity for updating stable storage
synchronously [22]. Hummingbird does not provide hard
persistence, but uses a
log of intentional deletions to bound the persistence of deletions.
Records
describing deletions, either cluster or file, are written into the log,
which is buffered in memory. Periodically, the log is written
out to disk according to the specified thresholds.
The user specifies when the log should be written by
specifying either a number of files threshold (i.e., once files have
been recorded in the log, it must be written to disk), or a threshold on
the passing of time (i.e., the log must be written to disk at least once
every seconds).
The log is structured as a table,
indexed by cluster or file identifier. When a file or cluster is overwritten on
disk, the delete intent record is removed from the log. Records contain
file or cluster identifiers as well as a generation number, which is
stored in the on-disk meta-data and used to eliminate the possibility
of replayed deletes.
Next: The recovery procedure.
Up: Recovery
Previous: Warming the cache.
Liddy Shriver
2001-05-01