-
Notifications
You must be signed in to change notification settings - Fork 218
Description
Mountpoint for Amazon S3 version
mount-s3 v1.20.0
AWS Region
us-east-1
Describe the running environment
AWS m6i.2xlarge running mount-s3, scheduled jobs from remote machines are connecting via a sshfs mount of the server that has access to the mount-s3 folder.
Mountpoint options
/usr/bin/mount-s3 -f --uid 166535 --gid 166535 --write-part-size 16777216 --force-path-style --allow-other --allow-delete --allow-overwrite demo-prod-gh-bucket "/opt/ghdata/share/CloudStorage"
What happened?
Using mount-s3 in a bioinformatic workflow with ~ 700 files and folders created and used in a directory.
I'm doing work in batches of 10 workers on a host. In the latest v1.20.0 release, I can reproduce a behavior where, in a queue of 100 workers, on the 8th or 9th batch, I get errors seeing the files in the work directory. A program reports that a file doesn't exist, but it does. Sometimes it's recovered by the 9th or 10th batch. I suspect it has something to do with the number of files being over a page size in the API or something.
Note that downgrading to 1.14.0 (last known good version).
I tested downgrading to 1.19.0 and v1.14.0 and was able to reproduce the issue, although the messages where different.
It seems like some cached or intermediate value for the directory listing is out of sync with the folder (as files are added). The problem "fixes" itself, but results in jailed tasks / jobs as they see a truncated or incomplete listing for a directory.
Any suggestions or work-arounds or coudl mount-s3 auto-resolve this state inconsistency internally?
Relevant log output
Logs at around the time of the error (1.20 and 1.19)
---
[WARN] ThreadId(12) readdirplus{req=52422080 ino=2711 fh=5801 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 9: inode error: out-of-order readdir, expected offset 118 but got 113 on dir handle 5801
2025-09-22T17:25:45.807592Z WARN ThreadId(12) readdirplus{req=52422080 ino=2711 fh=5801 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 9: inode error: out-of-order readdir, expected offset 118 but got 113 on dir handle 5801
[WARN] ThreadId(14) readdirplus{req=52422182 ino=2711 fh=5801 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 9: inode error: out-of-order readdir, expected offset 118 but got 113 on dir handle 5801
2025-09-22T17:25:45.822044Z WARN ThreadId(14) readdirplus{req=52422182 ino=2711 fh=5801 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 9: inode error: out-of-order readdir, expected offset 118 but got 113 on dir handle 5801
[WARN] ThreadId(13) readdirplus{req=52422188 ino=2711 fh=5801 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 9: inode error: out-of-order readdir, expected offset 118 but got 113 on dir handle 5801
2025-09-22T17:25:45.822259Z WARN ThreadId(13) readdirplus{req=52422188 ino=2711 fh=5801 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 9: inode error: out-of-order readdir, expected offset 118 but got 113 on dir handle 5801
[WARN] ThreadId(10) readdirplus{req=52422190 ino=2711 fh=5801 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 9: inode error: out-of-order readdir, expected offset 118 but got 113 on dir handle 5801
2025-09-22T17:25:45.822361Z WARN ThreadId(10) readdirplus{req=52422190 ino=2711 fh=5801 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 9: inode error: out-of-order readdir, expected offset 118 but got 113 on dir handle 5801
[WARN] ThreadId(08) readdirplus{req=52422474 ino=2711 fh=5800 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 2: inode error: file "C0749-2-3-4_dnascope_run.log" does not exist in parent inode 2711 (partial key "Output/Panel 100 Run2/")
2025-09-22T17:25:45.854386Z WARN ThreadId(08) readdirplus{req=52422474 ino=2711 fh=5800 offset=113}: mountpoint_s3_fs::fuse: readdirplus failed with errno 2: inode error: file "C0749-2-3-4_dnascope_run.log" does not exist in parent inode 2711 (partial key "Output/Panel 100 Run2/")
Example messages in 1.14:
---
2025-09-22T20:21:24.717444Z WARN readdirplus{req=5681170 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
2025-09-22T20:21:24.717505Z WARN readdirplus{req=5681172 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
2025-09-22T20:21:24.717558Z WARN readdirplus{req=5681174 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
[WARN] readdirplus{req=5681170 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
[WARN] readdirplus{req=5681172 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
[WARN] readdirplus{req=5681174 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
[WARN] readdirplus{req=5681182 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
2025-09-22T20:21:24.717940Z WARN readdirplus{req=5681182 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
[WARN] readdirplus{req=5681184 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
2025-09-22T20:21:24.717995Z WARN readdirplus{req=5681184 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
[WARN] readdirplus{req=5681188 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
2025-09-22T20:21:24.718174Z WARN readdirplus{req=5681188 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
2025-09-22T20:21:24.718232Z WARN readdirplus{req=5681190 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402
[WARN] readdirplus{req=5681190 ino=3561 fh=4599 offset=402}: mountpoint_s3::fuse: readdirplus failed with errno 22: out-of-order readdir, expected=416, actual=402