Log-Based Directory Resolution in the Coda File System

Puneet Kumar, M. Satyanarayanan

Abstract

Optimistic replication is an important technique for achieving high availability in distributed file systems. A key problem in optimistic replication is using semantic knowledge of objects to resolve concurrent updates from multiple partitions. In this paper, we describe how the Coda File System resolves partitioned updates to directories. The central result of our work is that logging of updates is a simple yet efficient and powerful technique for directory resolution in Unix file systems. Measurements from our implementation show that the time for resolution is typically less than 10% of the time for performing the original set of partitioned updates. Analysis based on file traces from our environment indicate that a log size of 2 MB per hour of partition should be ample for typical servers.