juicedata / juicefs

JuiceFS is a distributed POSIX file system built on top of Redis and S3.
https://juicefs.com
Apache License 2.0
10.95k stars 967 forks source link

[MacOS] "device not configured" #5048

Closed BitPhinix closed 3 months ago

BitPhinix commented 3 months ago

What happened:

Running juicefs bench on macos with a default s3 + redis setup causes

2024/08/01 23:58:22.065604 juicefs[1221] : Failed to open file /Volumes/datasets/juicefs_benchmark_1722581901987909000/bigfile.0.0: open /Volumes/datasets/juicefs_benchmark_1722581901987909000/bigfile.0.0: device not configured [bench.go:121]

How to reproduce it (as minimally and precisely as possible):

Setup a new juicefs volume using s3 + redis

juicefs format \
          --storage s3 \
          --trash-days 7 \
          --bucket xxxx \
          --access-key xxxx \
          --secret-key xxx \
          "redis://xxx:xxxx@redis-10710.c113.us-west-2-mz.ec2.redns.redis-cloud.com:10710" \
          datasets

Mount it using

sudo juicefs mount --backup-meta 0 -d "redis://xxxx:xxxxxx@redis-10710.c113.us-west-2-mz.ec2.redns.redis-cloud.com:10710" /Volumes/datasets

Run juicefs bench /Volumes/datasets/

Anything else we need to know?

Environment:

BitPhinix commented 3 months ago

Logs around the time the error happens:

2024/08/02 00:31:49.640262 juicefs[1934] <WARNING>: slow request: PUT chunks/0/12/12329_1_4194304 (req_id: "FDK0NZATAZC71JEJ", err: <nil>, cost: 29.636684583s) [cached_store.go:667]
2024/08/02 00:31:50.558047 juicefs[1934] <DEBUG>: PUT chunks/0/12/12340_4_65536 (req_id: "S7ZK131GEVEB14AG", err: <nil>, cost: 917.302708ms) [cached_store.go:669]
2024/08/02 00:31:51.541151 juicefs[1925] <DEBUG>: send FUSE fd: 14 [passfd.go:110]
2024/08/02 00:31:51.543918 juicefs[1925] <DEBUG>: msg:  fds: [] [passfd.go:139]
2024/08/02 00:31:51.550047 juicefs[1934] <WARNING>: flush 3074 interrupted after 120014983000 [writer.go:371]
2024/08/02 00:31:51.550281 juicefs[1934] <INFO>: slow operation: flush (3074,14,0000000000000000) - interrupted system call <120.015203> [accesslog.go:83]
2024-08-02 00:31:51.550797 I | writer: Write/Writev failed, err: 9=bad file descriptor. opcode: FLUSH
zhijian-pro commented 3 months ago

@BitPhinix Does this happen once in a while or every time?

jiefenghuang commented 3 months ago

The issue has been reproduced, operation timed out, causing FUSE to exit, and JuiceFS forgot to unmount.