Skip to content

Limitations

James Fantin-Hardesty edited this page Oct 10, 2023 · 1 revision

Following file-system operations are not supported in Cloudfuse

  • mknod
  • link (hard link api)
  • setxattr
  • getxattr
  • listxattr
  • removexattr
  • access
  • lock
  • bmap
  • ioctl
  • poll
  • write_buf
  • read_buf
  • flock
  • fallocate
  • copyfilerange
  • lseek

Following file-system workflows are not supported in Cloudfuse

  • Creation of pipes, FIFO queues, Device files
  • XAttrs for file or directory
  • Hardlinks for file or directory
  • Last access time and Last change time for any file or directory

Following file-system operations have altered behavior in Cloudfuse

  • fsync() force deletes file from local cache and invalidates attribute cache. This forces Cloudfuse to refresh the file metadata and contents on next open call to that file.
  • fsyncdir() invalidates metadata of that directory recursively. This forces Cloudfuse to refresh metadata of any child of that directory on next metadata query by kernel.

Unsupported scenarios

  • Cloudfuse does not support overlapping mount paths. While running multiple instances of Cloudfuse make sure each instance has a unique and non-overlapping mount point.
  • Cloudfuse does not support co-existence with NFS on same mount path. Behavior in this case is undefined.
  • For non-HNS Azure accounts (flat name space), Cloudfuse expects special directory marker files to identify any directory. If such files do not exist on storage and '--virtual-directory=true' cli flag is not provided, Cloudfuse will fail to identify directories.
  • On non-HNS Azure accounts chmod operations are not permitted and Cloudfuse will return back success in such cases.