On Wed, 2014-07-16 at 08:32 +0530, Santosh Pradhan wrote: > On 07/15/2014 06:24 AM, Franco Broi wrote: > > I think the option I need is noac. > > noac is no-attribute-caching in NFS. By default, NFS client would cache > the meta-data/attributes of FILEs for 3 seconds and directory for 30 > seconds (default value). NFS client revalidates the attr cache by > sending periodic GETATTR call. But if the client is mounted with noac, > then it wont cache attrs. I dont think it's available in FUSE mount. > This is not applicable to WRITE I/O which keeps changing the attrs. This > cant make I/Os synchronous. I/Os may get cached (VM subsystem cache) in > either side (NFS client and NFS server side). The nfs man page says: In addition to preventing the client from caching file attributes, the noac option forces application writes to become synchronous so that local changes to a file become visible on the server immediately. That way, other clients can quickly detect recent writes when they check the file's attributes. I'm guessing that an NFS disk exported with sync, forces all clients to be mounted as if they had used noac... > > Thanks, > Santosh > > > > > On Fri, 2014-07-11 at 16:10 +0530, Santosh Pradhan wrote: > >> On 07/11/2014 02:37 PM, Franco Broi wrote: > >>> On Fri, 2014-07-11 at 14:22 +0530, Santosh Pradhan wrote: > >>>> On 07/11/2014 06:10 AM, Franco Broi wrote: > >>>>> Hi > >>>>> > >>>>> Is there any way to make Gluster emulate the behaviour of a NFS > >>>>> filesystem exported with the sync option? By that I mean is it possible > >>>>> to write a file from one client and guarantee that the data will be > >>>>> instantly available on close to all other clients? > >>>> I think FUSE also supports the sync option with mount similar to NFS. > >>> There's 2 types of NFS sync, server and client but they behave very > >>> differently. With sync at the client end, NFS just calls fsync on close > >>> (I think), > >> No. If the NFS client is mounted with sync flag i.e. -o sync, then all > >> the WRITEs will be synchronous i.e. they wont be cached in client side > >> and they(WRITEs) will hit the server with FILE_SYNC (stable write) flag > >> which is nothing but FILE I/O with O_SYNC flag. > >> > >>> with sync at the server end, all writes are synchronous. > >>> > >>> Opening the file with O_SYNC also doesn't give the desired effect > >>> although you'd think it would. > >> It should be same as above. > >> > >> Thanks, > >> Santosh > >>> NFS must have some way of communicating > >>> the file attribute changes to all the clients immediately the write > >>> completes. > >>> > >>>> Man page snippet for fuse(8): > >>>> OPTIONS > >>>> Most of the generic mount options described in mount are > >>>> supported (ro, rw, suid, nosuid, dev, > >>>> nodev, exec, noexec, atime, noatime, sync, async, dirsync). > >>>> Filesystems are mounted with > >>>> nodev,nosuid by default, which can only be overridden by a > >>>> privileged user. > >>>> > >>>> Thanks, > >>>> Santosh > >>>> > >>>>> Cheers, > >>>>> > >>>>> _______________________________________________ > >>>>> Gluster-users mailing list > >>>>> Gluster-users@xxxxxxxxxxx > >>>>> http://supercolony.gluster.org/mailman/listinfo/gluster-users > > > _______________________________________________ Gluster-users mailing list Gluster-users@xxxxxxxxxxx http://supercolony.gluster.org/mailman/listinfo/gluster-users