Skip to content

Commit cf64c3b

Browse files
committed
Revise the section on problems in connection with XFS
1 parent 874d157 commit cf64c3b

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

doc/final-report/integration-notes.md

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -202,22 +202,22 @@ keys into a new Bloom filter and finally writing out the new Bloom filter.
202202
Adding such a feature would, of course, incur additional development work, but
203203
the infrastructure needed is present already.
204204

205-
# Possible file system incompatibility with XFS
206-
207-
The authors have seen at least one platform environment where there was a
208-
failure when using a table configuration with no disk caching (i.e.
209-
`DiskCacheNone`). It is unconfirmed, but the suspicion is that some versions of
210-
the Linux XFS file system (and at least the version on the default AWS Amazon
211-
Linux 2023 AMI) do not support the system call that underlies [`fileSetCaching`]
212-
from the `unix` package. This is an `fcntl` call, used to set the file status
213-
flag `O_DIRECT`. XFS certainly supports `O_DIRECT`, but it may support it only
214-
when the file is opened using this flag, and not when trying to set the flag on
215-
an already open file.
216-
217-
A workaround is to use the EXT4 file system, or use `DiskCacheAll` for the
218-
table configuration (at the cost of using more memory and putting pressure on
219-
the page cache). If this issue is confirmed to be a widespread problem, it may
220-
become necessary to extend the `unix` package to allow setting the `O_DIRECT`
221-
flag for file open.
205+
# Possible incompatibility with the XFS file system
206+
207+
We have seen at least one failure when disabling disk caching via the table
208+
configuration, using the `DiskCacheNone` setting. Albeit it is unconfirmed, we
209+
suspect that some versions of Linux’s XFS file system implementation, in
210+
particular the one used by the default AWS Amazon Linux 2023 AMI, do not support
211+
the system call that underlies [`fileSetCaching`] from the `unix` package. This
212+
is an `fcntl` call, used to set the file status flag `O_DIRECT`. XFS certainly
213+
supports `O_DIRECT`, but it may support it only when the file in question is
214+
opened using this flag, not when trying to set this flag for an already open
215+
file.
216+
217+
This problem can be worked around by using the ext4 file system or by using
218+
`DiskCacheAll` in the table configuration, the latter at the cost of using more
219+
memory and putting pressure on the page cache. If this problem is confirmed to
220+
be widespread, it may become necessary to extend the `unix` package to allow
221+
setting the `O_DIRECT` flag upon file opening.
222222

223223
[`fileSetCaching`]: https://hackage-content.haskell.org/package/unix-2.8.7.0/docs/System-Posix-Fcntl.html#v:fileSetCaching

0 commit comments

Comments
 (0)