Patent ID: 8805901

Claim:
A method implemented by data processing apparatus, the method including: identifying, by a first pointer manager of a plurality of pointer managers, a first version of a directory, the first version of the directory including i) a first pointer and ii) an association of a name with the first pointer, wherein the first pointer is a reference to a first version of an immutable data object in an append-only file system; receiving, by the first pointer manager, a modified version of the data object from a first computing device in communication with the first pointer manager; determining, by each pointer manager of the plurality of pointer managers, whether the data object stored by the file system was updated by any computing device other than the first computing device before the first pointer manager received the modified version of the data object; if a majority of the plurality of pointer managers determine that the data object stored by the file system was not updated by any computing device other than the first computing device before the first pointer manager received the modified version of the data object: creating a second pointer that is a reference to the modified version of the data object, associating the name with the second pointer, and disassociating the name from the first pointer, and creating a modified version of the directory, the modified version of the directory including i) the second pointer and ii) an association of the name with the second pointer; if a majority of the plurality of pointer managers determine that the data object stored by the file system was updated by any computing device other than the first computing device before the first pointer manager received the modified version of the data object: providing, to the first computing device, a current version of the directory stored by the filed system including i) a third pointer to a most current version of the data object and ii) an association of the name with the third pointer.