filesystem_spec
filesystem_spec copied to clipboard
fsspec.fuse -f is inverted and hangs when specified
echo bar > foo
tar -cf foo{.tar,}
python3 -m fsspec.fuse --version # 2024.3.1
python3 -m fsspec.fuse --help
# -f, --foreground Running in foreground or not (Default: False)
python3 -m fsspec.fuse local foo.tar mounted # Runs in the foreground contrary to the help message
python3 -m fsspec.fuse -f local foo.tar mounted # Finishes / moves itself into background
As the comments in the above reproducer state:
- Without
-f
, the called python process stays in the foreground even though the default value to-f
is supposed to be False. - Note that the mount point cannot be read because of #1568.
- With
-f
specified, the program moves itself into the background. So, the exact opposite what it should do. - With
-f
, the mount point hangs every process trying to access it. E.g., try runningls
in the folder the mount point is in, and it will hang.fusermount -u
also does not work. The started python process has to be searched with pgrep or ps and killed manually:kill $( pgrep -f fsspec )
The FUSE integration has long been flaky/experimental. You may well be right with your assessment, since these things are also tricky to test. I'd be happy to pass FUSE to another library :)
For the TAR file names, indeed that's a separate issue and can/should be fixed.