next up previous contents
Next: Hash (H) Up: Types Previous: Epoch (E)   Contents

$(Inode, Epoch)$

Epochs are commonly associated with Inodes, so often that they deserve special mention as a distinct type: an $(Inode, Epoch)$ pair.

In an $(Inode, Epoch)$ pair, the Epoch is the latest instant at which the data associated with the Inode had a particular value. In other words, it is based on the time when the next version of the data associated with the Inode was created. This allows for retrieval of Inode data consistent with a given time $T$ using the Berkeley DB DB_SET_RANGE flag with a key of `(Inode, $T$)'.

An $(Inode, Epoch)$ is distinguished from a plain Inode by its length. Inodes and Epochs are both constant-length strings, and they have non-zero length, so this is not ambiguous.

An Inode (without Epoch) evaluated in $(Inode, Epoch)$ context is considered equivalent to $(Inode, {\tt EPOCH\_{}MAX})$.



Zygo Blaxell 2003-03-04