Patent ID: 9047307
Filing Date: 2015-06-02
Classification: G06F,H04L

Abstract:
1. A method comprising: acquiring, by a device, a set of locks for performing a first operation associated with a file stored in a memory, the set of locks including: a read lock associated with each directory identified in a full pathname of the file, the read lock associated with each directory identified in the full pathname preventing data from being read from each directory identified in the full pathname, and one of: a write lock associated with the full pathname of the file, the write lock preventing data from being written to the file, or a read lock associated with the full pathname of the file, the read lock associated with the full pathname preventing data from being read from the file; generating a namespace tree that includes a plurality of nodes, each node of the plurality of nodes corresponding to an absolute file name or an absolute directory name, and each node having an associated read lock and an associated write lock; determining, by the device, whether a lock, included in the set of locks, conflicts with another lock, included in another set of locks acquired to perform a second operation, including mapping the full pathname to a particular node of the plurality of nodes, and determining whether the lock conflicts with the other lock based on the read lock and the write lock associated with the particular node; and performing, by the device, the first operation and the second operation, the first operation being performed in parallel with the second operation when the lock does not conflict with the other lock, and the first operation and the second operation being performed in series when the lock conflicts with the other lock.