coolderli commented on issue #4558:
URL: https://github.com/apache/gravitino/issues/4558#issuecomment-2337573960

   @diqiu50 I have tested the fsspec fuse again. I mounted an HDFS directory 
and found the writer wasn't successful. The list and read are successful. 
   
   ```
   >>> with open('/tmp/fileset/fileset_xx/tmp/test_hdfs_test/test_file.txt', 
'w') as file:
   ...     file.write(content)  # 写入内容
   ... 
   DEBUG:fsspec.fuse:getattr /test_file.txt
   DEBUG:fuse:FUSE operation getattr raised a <class 'fuse.FuseOSError'>, 
returning errno 2.
   Traceback (most recent call last):
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fsspec/fuse.py",
 line 33, in getattr
       info = self.fs.info(path)
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/gravitino/filesystem/gvfs.py",
 line 192, in info
       actual_info: Dict = context_pair.filesystems()[0].info(
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fsspec/implementations/arrow.py",
 line 90, in info
       return self._make_entry(info)
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fsspec/implementations/arrow.py",
 line 109, in _make_entry
       raise FileNotFoundError(errno.ENOENT, os.strerror(errno.ENOENT), 
info.path)
   FileNotFoundError: [Errno 2] No such file or directory: 
'/xxxxxx/test_file.txt'
   
   The above exception was the direct cause of the following exception:
   
   Traceback (most recent call last):
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fuse.py",
 line 739, in _wrapper
       return func(*args, **kwargs) or 0
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fuse.py",
 line 779, in getattr
       return self.fgetattr(path, buf, None)
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fuse.py",
 line 1032, in fgetattr
       attrs = self.operations('getattr', self._decode_optional_path(path), fh)
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fuse.py",
 line 1081, in __call__
       return getattr(self, op)(*args)
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fsspec/fuse.py",
 line 35, in getattr
       raise FuseOSError(ENOENT) from exc
   fuse.FuseOSError: [Errno 2] No such file or directory
   DEBUG:fsspec.fuse:create ('/test_file.txt', 33204)
   DEBUG:fsspec.fuse:getattr /test_file.txt
   DEBUG:fuse:FUSE operation ioctl raised a <class 'fuse.FuseOSError'>, 
returning errno 25.
   Traceback (most recent call last):
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fuse.py",
 line 739, in _wrapper
       return func(*args, **kwargs) or 0
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fuse.py",
 line 1065, in ioctl
       return self.operations('ioctl', path.decode(self.encoding),
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fuse.py",
 line 1081, in __call__
       return getattr(self, op)(*args)
     File 
"/home/mi/IdeaProjects/gravitino/.gradle/python/Linux/Miniforge3/envs/python-3.8/lib/python3.8/site-packages/fuse.py",
 line 1148, in ioctl
       raise FuseOSError(errno.ENOTTY)
   fuse.FuseOSError: [Errno 25] Inappropriate ioctl for device
   ```
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to