Changelog History
-
v3.13.0-rc3 Changes
August 24, 2020Dear Users,
π 3.13-rc3 (release candidate) is officially out!
What's new
π Updated packaging for current releases of popular distributions:
- Debian 10.4
- Ubuntu 20.04
- CentOS 8
Known issues by severity
grave
- β¬οΈ upgrading from 3.12 to 3.13 can potentially lose EC chunks
major
- π seekdir/telldir does not work properly, especially seekdir with negative offsets
- chunk replicated onto a drive that fails during a write operation can end up in limbo state (undergoal) until chunkserver is restarted
minor
- π¦ uRaft package is not integrated yet (not ready for use)
- β Ganesha has not been tested yet
- chunk rebalancing behavior is flaky (is some scenarios it takes more time than it should)
Future plans
LizardFS team plans for two more rc versions before an actual 3.13 release:
- rc4 - fix all known grave and major issues
- rc5 - integration of uRaft and Ganesha
-
v3.13.0-rc2 Changes
October 31, 2019Dear Users,
π 3.13.0-rc2 (release candidate) is officially out!
π 2 major bugs fixed:
π Minor fixes and features:
- π§ Changing configuration paths from
/etc/mfs/
to/etc/lizardfs/
(#456) - π Fixing autofs mounts (#731)
- π Fix for not honored ACL (#816)
- π Fixed build for 32-build mfsmount3
- β Replacing fixed version of Google Test and spdlog with newest available version (#774)
- π· Making DebHelper able to use multiple parallel jobs
- π Fix incorrect number of files/directories with specified goal (#723)
- π Fixing compilation of the Wireshark plugin
- π Fixed
lizardfs-uraft
deb package (#719) - β Added missing header to make LizardFS compilable again (#655)
- β Clearing up compilation compilation warnings
- π Fixing debug info
- β Adding code documentation
Cheers,
LizardFS Team - π§ Changing configuration paths from
-
v3.13.0-rc1 Changes
July 17, 2018Dear Users,
π 3.13.0-rc1 (release candidate) is officially out!
Featuring:
- uRaft HA
- π fixes to EC handling
- π nfs-ganesha plugin changed to use only C code
- β¬οΈ reduced number of secondary groups retrievals
- β add fuse3 client
- π many fixes
Detailed info:
- uRaft HA *
uRaft is HA solution designed for use with LizardFS. It allows for seamless switching
of master server in case of hardware failure. More information about uRaft is available
π in LizardfFS Handbook (https://docs.lizardfs.com/index.html)- π fixes to EC handling *
For chunk types with number of parity greater than 4 there could occur situation when
it wasn't possible to recover missing data. This was low probability event but nonetheless
it could happen. To solve this problem we have to recompute parity parts for those types of chunks.
Unfortunately until all parity parts are recomputed affected chunks are in endangered state.- π nfs-ganesha plugin changed to use only C code *
π In preparation for moving LizardFS nfs-ganesha plugin to official nfs-ganesha repository,
π we had to remove all occurrences of C++ code and replace it with plain C.- β¬οΈ reduced number of secondary groups retrievals *
In LizardFS we introduced handling of secondary groups. Unfortunately the function to retrieve
secondary groups in FUSE library turned out to be using a lot of CPU resources. Thanks to removing
π unnecessary calls to this function, mount performance increased significantly.- β add fuse3 client *
LizardFS now include mount3 client which uses FUSE3 library. Thanks to new features in FUSE3,
π now mount performs much better in many scenarios. Here are the most important changes visible
to LizardFS users:- 0οΈβ£ big_writes option is now enabled by default (also it isn't recognized as a parameter anymore).
- β Added writeback_cache option. With kernel 3.14 and newer this
π enables write-back caching which can significantly improve performance. - π increased read/write performance (specially for small operations)
π§ Because most of the Linux distributions don't include FUSE3 library, we have build FUSE3 packages
and made them available on LizardFS page (https://lizardfs.com/)Cheers,
Adam OchmaΕski
LizardFS Team -
v3.12.0 Changes
December 21, 2017Dear Users,
3.12.0 is officially out!
Featuring:
C API
π nfs-ganesha plugin
RichACL - a new POSIX + NFSv4 compatible ACL standard
π OSX ACL support through osxfuse
ACL in-memory deduplication
0οΈβ£ client readahead enabled by default
π file lock fixes
π AVX2 support for erasure code goals
π MinGW compilation fixes
more flexible chunkserver options
π many fixes
Detailed info:C API *
LizardFS 3.12 comes with liblizardfs-client library and C language API header.
π It's now possible to build programs/plugins with direct support for LizardFS operations,
π no FUSE needed. For reference, see:
src/mount/client/lizardfs_c_api.h
src/data/liblizardfs-client-example.cFor those building LizardFS from source, pass a -DENABLE_CLIENT_LIB=YES flag to cmake
π in order to make sure you're building client library as well.π nfs-ganesha plugin *
π Our official plugin for Ganesha NFS server is included as well. This plugin enables
a LizardFS FSAL (File System Abstraction Layer) to Ganesha, which is then used
π to access LizardFS clusters directly. Our new plugin is pNFS and NFSv4.1 friendly.For those building LizardFS from source, pass a -DENABLE_NFS_GANESHA=YES flag to cmake in order to make sure you're building client library as well.
RichACL *
π In order to extend POSIX access control list implementation we introduced RichACL support.
Backward compatibility with POSIX ACLs is guaranteed. Additionally, it's possible to use NFSv4-style ACL tools (nfs4_getfacl/nfs4_setfacl) and RichACL tools (getrichacl/setrichacl) to manage more complicated access control rules.OSX ACL *
π» Setting/getting ACLs is also possible on OSX via both command line chmod/ls -e interface and desktop.π File lock fixes *
π Global file locking mechanism is now fully fixed and passes all NFS lock tests from connectathon suite.AVX2 *
Erasure code goal computing routines now take full advantage of AVX2 processor extensions.MinGW *
π LizardFS is now bug-free again for MinGW cross-compiling.Chunkserver options *
π§ Replication limits are now fully configurable in chunkserver config.
β Also, chunk test (a.k.a. scrubbing) has 1 millisecond precision now instead of previous 1 second, which allows users to turn on more aggressive scrubbing with simple chunkserver reload.Best regards,
LizardFS Team -
v3.12.0-rc1 Changes
November 28, 2017Dear Users,
π 3.12.0-rc (release candidate) is officially out!
Featuring:
- C API
- π nfs-ganesha plugin
- RichACL - a new POSIX + NFSv4 compatible ACL standard
- π OSX ACL support through osxfuse
- ACL in-memory deduplication
- 0οΈβ£ client readahead enabled by default
- π file lock fixes
- π AVX2 support for erasure code goals
- π MinGW compilation fixes
- more flexible chunkserver options
- π many fixes
Detailed info:
- C API *
LizardFS 3.12 comes with liblizardfs-client library and C language API header.
π It's now possible to build programs/plugins with direct support for LizardFS operations,
π no FUSE needed. For reference, see:
src/mount/client/lizardfs_c_api.h
src/data/liblizardfs-client-example.cFor those building LizardFS from source, pass a -DENABLE_CLIENT_LIB=YES flag to cmake
π in order to make sure you're building client library as well.- π nfs-ganesha plugin *
π Our official plugin for Ganesha NFS server is included as well. This plugin enables
a LizardFS FSAL (File System Abstraction Layer) to Ganesha, which is then used
π to access LizardFS clusters directly. Our new plugin is pNFS and NFSv4.1 friendly.For those building LizardFS from source, pass a -DENABLE_NFS_GANESHA=YES flag to cmake in order to make sure you're building client library as well.
RichACL *
π In order to extend POSIX access control list implementation we introduced RichACL support.
Backward compatibility with POSIX ACLs is guaranteed. Additionally, it's possible to use NFSv4-style ACL tools (nfs4_getfacl/nfs4_setfacl) and RichACL tools (getrichacl/setrichacl) to manage more complicated access control rules.OSX ACL *
π» Setting/getting ACLs is also possible on OSX via both command line chmod/ls -e interface and desktop.π File lock fixes *
π Global file locking mechanism is now fully fixed and passes all NFS lock tests from connectathon suite.AVX2 *
Erasure code goal computing routines now take full advantage of AVX2 processor extensions.MinGW *
π LizardFS is now bug-free again for MinGW cross-compiling.Chunkserver options *
π§ Replication limits are now fully configurable in chunkserver config.
β Also, chunk test (a.k.a. scrubbing) has 1 millisecond precision now instead of previous 1 second, which allows users to turn on more aggressive scrubbing with simple chunkserver reload.Cheers,
LizardFS Team -
v3.11.3 Changes
July 13, 2017Dear Users,
LizardFS 3.11.3 is ready.π Yet another bugfix release, here's what we fixed:
- master: fix issues with reporting defective files
- mount: fix request size in read cache for empty results
Best,
LizardFS Team
-
v3.11.2 Changes
June 07, 2017Dear Users,
LizardFS 3.11.2 is already here!
This is a very minor release and its only purpose is to fix wrong version code in 3.11.1.
Enjoy!
Best,
LizardFS Team -
v3.11.1 Changes
June 06, 2017Dear Users,
LizardFS 3.11.1 is out!
π This is a minor bugfix release, so it contains bugfixes only:
- master: fix high cpu usage in fs_periodic_file_test
- master: fix dangling nodes in defective files list
- mount: fix direntry cache bug for repeated paths
Enjoy!
Best,
LizardFS Team -
v3.11.0 Changes
May 11, 2017Dear Users,
here comes LizardFS 3.11.0!
Featuring:master: improve ACL implementation
master: add option to avoid same-ip chunkserver replication
π§ master: add minimal goal configuration option
master: reimplement directory entry cache for faster lookups
master: add whole-path lookups
master: chunkserver add chunkserver load awareness
mount: add readahead to improve sequential read perfromance
π mount: add secondary groups support
tools: add correct-only flag to filerepair
tools: add -s and -i options to snapshot command
π tools: add recursive remove operations (for removing large directories
and snapshots)
tools: add tool for stopping execution of tasks (snapshot, recursive
β remove, etc.)
all: change to semantic versioning system
π all: many fixesDetailed information:
Readahead
Clients can now benefit from integrated readahead mechanism.
In order to enable readahead, please mount with the following options:
-o cacheexpirationtime={MSEC}
π -o readaheadmaxwindowsize={KB}
Example:
π mfsmount -o cacheexpirationtime=1000 -o readaheadmaxwindowsize=8192π Recursive remove
A tool for removing large directories/snapshots is finally implemented.
Example:
π lizardfs rremove big_directory/
π lizardfs rremove -hTools for managing tasks
Two administration tools are available for managing long tasks:
lizardfs-admin list-tasks
lizardfs-admin stop-task
β Run above commands for detailed usage information.π Secondary groups support
LizardFS is now able to fully recognize secondary groups of users
and take them into account while evaluating permissions.Best,
LizardFS Team