Partial Replication in the Vesta Software Repository

Timothy Mann, Lytton Avenue · 2001

The Vesta repository is a special-purpose replicated file system, developed as part of the Vesta software configuration management system. One of the major goals of Vesta is to make all software builds reproducible. To this end, the reposi-tory provides an append-only name space; new names can be inserted, but once a name exists, its meaning cannot change. More concretely, all files and some des-ignated directories are immutable, while the remaining directories are appendable, allowing new names to be defined but not allowing existing names to be redefined. The data stored in a repository can be replicated, to support distributed soft-ware development. The append-only nature of the repository greatly simplifies the problem of maintaining consistency among replicas. Conceptually, all files and directories stored in all Vesta repositories are named in one single, global name space. Each repository stores some subtree of the complete name space. Replica-tion is present when the subtrees stored by two different repositories overlap; that is, some of the same names and data occur in both. We call this concept partial replication, because each repository can choose to replicate all, part, or none of the data stored in any other repository. 1

Read the paper · More papers on PaperTik