Revisions of mergerfs

Paolo Stivanin's avatar Paolo Stivanin (polslinux) committed (revision 4)
- Update to 2.40.2:
  * Add export-support option as a possible workaround for NFS EIO issue. Set to false.
  * Add details to README regarding remote filesystems.
  * Fix intermittent error of EIO when used with NFS.
  * Special case O_TMPFILE in preload. Fixes incorrect permissions when used.
Paolo Stivanin's avatar Paolo Stivanin (polslinux) accepted request 1146218 from Jan Engelhardt's avatar Jan Engelhardt (jengelh) (revision 3)
highlight the pinnacle features of mergerfs
fix fixmes for factory
David Sterba's avatar David Sterba (dsterba) accepted request 1143062 from Paolo Stivanin's avatar Paolo Stivanin (polslinux) (revision 2)
- Update to 2.39.0:
  * Improvement: Rework how threadpools queue depth. There was a rare bug that affected 1 user that
    lead to the pool believing there were no queue slots open when there should have been.
  * Improvement: Better compatibility with older versions of MUSL.
  * Improvement: Print warnings to stderr and syslog if run as non-root indicating mergerfs may not work correctly.
  * Improvement: Change how allow_other auto-setting works. Only set if running as root for those users who are
    on shared hosts with user_allow_other disabled and all activity is done as their user id. There may still
    be edge cases that fail but if it works for them I don't want to disallow it.
  * Add flushonclose feature. Takes advantage of a newer FUSE feature which gives the server control over if
    a flush is issued at file close. Defaults to a less aggressive policy of only flushing when a file is opened for write.
  * Changed flush-on-close to default to opened-for-write
  * Fix user.mergerfs.pid queries
  * Misc updates to docs
  * Fix deadlock when exiting mergerfs
  * readdir policies: func.readdir=X where X is seq, cor, or cosr.
  * Add invalidation of gid cache via SIGUSR2 (which also triggers a full memory gc)
  * Allow user to define depth of process thread message queues. Previously these were unbounded and "FORGET" message floods would bloat memory.
  * O_DIRECT now supported, mostly. If software attempt to change the O_DIRECT flag on the fly using fcntl(F_SETFL) it won't work as that is not supported by FUSE.
  * Fix bug in moveonenospc file moves when the file was opened in append mode.
  * When a create function fails with EROFS (which really only happens when an ext4 filesystem errors) the relevant branch
    will be marked as mode = RO and the call tried again.
  * Add ability to trigger memory cleanup via custom ioctl calls or signal SIGUSR2.
  * Add ability to trigger invalidation of all nodes to flush memory using custom ioctl or signal SIGUSR1.
  * Change default read-thread-count from -1 to 0
  * Remove duplicate entries in docs 
  * Add ability to log to syslog. Used only for certain new features at startup.
  * New FUSE message processing mode. Allow for a separation between threads which are reading messages and those processing messages. See process-thread-count option.
  * Added ability to pin threads to physical or logical cores automatically. Numerous algorithms provided.
    Makes it easier to limit mergerfs' compute footprint while maintaining concurrency. See pin-threads option.
  * Added ability to change mergerfs' scheduling priority (default has been -10). See scheduling-priority option.
  * Added ability for mergerfs on startup only to wait for all branches to become a filesystem other than the mountpoint's.
    This is not a full replacement for proper dependency management via systemd or similar systems but can help. See branches-mount-timeout option.
  * Try to catch and forbid adding the target mountpoint as a branch.
  * Added ability to set branch AND mergerfs readahead from within mergerfs at startup. Larger values may improve performance when
    using page caching in particular. See readahead option.
  * Added ability to lazily unmount the target mountpoint when started. This helps in live upgrades of mergerfs
    or instances where mount -a is run. This will allow the underlying instance of mergerfs to exit once it is no
    longer in use while the new instance is running on top of it.
  * Added new cache.files policy per-process. Used with cache.files.process-names it can define process comm names that will have page caching enabled when matched.
  * Reject all btrfs ioctl calls made to mergerfs.
  * Optimized FUSE message handling to reduce memory allocation. Same with some internal functions like read.
  * Removed need to set use_ino, nonempty, or allow_other. They should have been always enabled for proper functionality and compatibility. Setting them is a noop.
  * Removed all splice features. Over the years there has been little evidence the feature actually improved performance but did complicate
    the code quite a bit. The splice options are now noops.
David Sterba's avatar David Sterba (dsterba) accepted request 958334 from Antonio Larrosa's avatar Antonio Larrosa (alarrosa) (revision 1)
New package mergerfs 2.33.3
Displaying all 4 revisions
openSUSE Build Service is sponsored by