RFR: 8232861: (fc) FileChannel.force fails on WebDAV file systems (macOS) [v2]
Alan Bateman
alanb at openjdk.java.net
Wed Apr 7 18:19:38 UTC 2021
On Wed, 7 Apr 2021 16:51:26 GMT, Brian Burkhalter <bpb at openjdk.org> wrote:
>> src/java.base/unix/native/libnio/ch/FileDispatcherImpl.c line 184:
>>
>>> 182: result = fsync(fd);
>>> 183: }
>>> 184: }
>>
>> Do you need to save/restore errno so that the original error from fcntl(F_FULLSYNC) is used in the error handling?
>>
>> Also what you would think about dropping the check for ENOTSUP.
>
> I thought about `errno` but didn't know whether it's common practice to cache it like that.
>
> We had `ENOTSUP` I suppose in case the `F_FULLSYNC` is unsupported on a local file system. From the man page of `fcntl()` the doc of `F_FULLSYNC` states
> This is currently implemented on HFS, MS-DOS (FAT), Universal Disk Format (UDF) and APFS file systems
> although `ENOTSUP` itself is not actually documented here.
I think this looks good, I'm just wondering to myself if it is possible to get ENOTSUP from a local device.
-------------
PR: https://git.openjdk.java.net/jdk/pull/3366
More information about the nio-dev
mailing list