Locking Support in Data Fabric

Provides a synopsis of how data-fabric supports locking for clients.

The data-fabricfile system does not support server-side locking. This means that locks are held by components outside of the filesystem layer and are therefore not shared or enforced globally. As a result, when locking is available, you will need to carefully understand exactly where this enforcement occurs and ensure that all programs using the same locks access them through the same enforcement point. Also, locks, when supported in data-fabric, are always whole file locks and advisory, not mandatory. The following table describes the locking support in data-fabric for the clients.

Client Type Locking Support Default Value Notes
Hadoop No N/A Hadoop does not support locking APIs.
FUSE-based POSIX Yes Lock Data Fabric supports advisory locking using kernel locking. This lock is locally enforced on that single Linux host and not shared with other hosts. The lock is only meaningful if all users accessing the file are using FUSE and are on the same host.
Loopback NFS POSIX No N/A No support in data-fabric for locking. However, you can use Network Lock Manager to lock with the nolock option on the mount command. This lock is locally enforced on that single Linux host and not shared with other hosts. The lock is only meaningful if all lock users are using loopbacknfs and are on the same host.
NFS v3 No N/A No support for locking in data-fabric. However, you can use Network Lock Manager to lock with the nolock option on the mount command. This lock is locally enforced on that single Linux host and not shared with other hosts. The lock is only meaningful if all lock users are using NFS v3 and are on the same host.
NFS v4 Yes NoLock Data Fabric supports advisory locking for NFS v4 server. The lock is enforced locally on the NFS v4 server, which means the lock is only meaningful if all lock users are using the same NFS v4 server. See Advisory Locking in NFS v4 for more information.