That is correct. There is an "async" mount option which is related to Linux file systems. This has no effect at the NFS server. The default is "async". The other is "async" exports option which was invented to handle NFSv2 as the NFSv2 protocol doesn't have the notion of unstable writes and commits. People used "async" export option with NFSv2 at the cost of losing data for performance when the Server goes down.
NFSv3 has unstable writes and commits baked into the protocol, so there is no reason (well, sort of) to use "async" export option with NFSv3. kNFS supports this option as it still supports NFSv2. Ganesha doesn't support NFSv2 and there is no need to support "async" export option.
The fact that Linux NFS client (as well as many clients) use something called "close-to-open" semantics which forces them to COMMIT/SYNC all the file's dirty data as part of close(). Since fclose() is just a wrapper, it doesn't matter whether the application uses close() or fclose(). The NFS client will SYNC the files dirty data to the disk as part of close() system call.
The "async" mount will NOT fix this! I never experimented with "nocto" mount option but it might help here. See "man 5 nfs" for details.
Regards, Malahal.
PS: NFS
----- Original message -----
From: Jan-Frode Myklebust <[email protected]>
Sent by: [email protected]
To: gpfsug main discussion list <[email protected]>
Cc:
Subject: Re: [gpfsug-discuss] Preliminary conclusion: single client, single thread, small files - native Scale vs NFS
Date: Wed, Oct 17, 2018 7:20 PM
Also beware there are 2 different linux NFS "async" settings. A client side setting (mount -o async), which still cases sync on file close() -- and a server (knfs) side setting (/etc/exports) that violates NFS protocol and returns requests before data has hit stable storage.-jfOn Wed, Oct 17, 2018 at 9:41 AM Tomer Perry <[email protected]> wrote:Hi,
Without going into to much details, AFAIR, Ontap integrate NVRAM into the NFS write cache ( as it was developed as a NAS product).
Ontap is using the STABLE bit which kind of tell the client "hey, I have no write cache at all, everything is written to stable storage - thus, don't bother with commits ( sync) commands - they are meaningless".
Regards,
Tomer Perry
Scalable I/O Development (Spectrum Scale)
email: [email protected]
1 Azrieli Center, Tel Aviv 67021, Israel
Global Tel: +1 720 3422758
Israel Tel: +972 3 9188625
Mobile: +972 52 2554625
From: "Keigo Matsubara" <[email protected]>
To: gpfsug main discussion list <[email protected]>
Date: 17/10/2018 16:35
Subject: Re: [gpfsug-discuss] Preliminary conclusion: single client, single thread, small files - native Scale vs NFS
Sent by: [email protected]
I also wonder how many products actually exploit NFS async mode to improve I/O performance by sacrificing the file system consistency risk:
[email protected] wrote on 2018/10/17 22:26:52:
> Using this option usually improves performance, but at
> the cost that an unclean server restart (i.e. a crash) can cause
> data to be lost or corrupted."
For instance, NetApp, at the very least FAS 3220 running Data OnTap 8.1.2p4 7-mode which I tested with, would forcibly *promote* async mode to sync mode.
Promoting means even if NFS client requests async mount mode, the NFS server ignores and allows only sync mount mode.
Best Regards,
---
Keigo Matsubara, Storage Solutions Client Technical Specialist, IBM Japan
TEL: +81-50-3150-0595, T/L: 6205-0595
_______________________________________________
gpfsug-discuss mailing list
gpfsug-discuss at spectrumscale.org
http://gpfsug.org/mailman/listinfo/gpfsug-discuss
_______________________________________________
gpfsug-discuss mailing list
gpfsug-discuss at spectrumscale.org
http://gpfsug.org/mailman/listinfo/gpfsug-discuss_______________________________________________
gpfsug-discuss mailing list
gpfsug-discuss at spectrumscale.org
http://gpfsug.org/mailman/listinfo/gpfsug-discuss
_______________________________________________ gpfsug-discuss mailing list gpfsug-discuss at spectrumscale.org http://gpfsug.org/mailman/listinfo/gpfsug-discuss
