Abstract
Ordering events in an asynchronous distributed system is a classic distributed systems problem. It is also an important problem to solve for many client applications attempting to subscribe to a stream of events on a distributed file system. This talk will present such a method to produce a perfect causal ordering of distributed file system events using monotonically-increasing inode revision numbers collected on file lookups and metadata modifications. The recording of data, organization of data, and sorting of data with graph theory will all be addressed. Also to be discussed are other methods considered before converging on the final solution, along with their benefits and trade-offs.