summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/release-notes/6.0.md142
1 files changed, 142 insertions, 0 deletions
diff --git a/doc/release-notes/6.0.md b/doc/release-notes/6.0.md
new file mode 100644
index 0000000000..9140df5154
--- /dev/null
+++ b/doc/release-notes/6.0.md
@@ -0,0 +1,142 @@
+# Release notes for Gluster 6.0
+
+This is a major release that includes a range of code improvements and stability
+fixes among a few features as noted below.
+
+A selection of the key features and changes are documented on this page.
+A full list of bugs that have been addressed is included further below.
+
+- [Announcements](#announcements)
+- [Major changes and features](#major-changes-and-features)
+- [Major issues](#major-issues)
+- [Bugs addressed in the release](#bugs-addressed)
+
+## Announcements
+
+1. Releases that receive maintenance updates post release 6 are, 4.1 and 5
+([reference](https://www.gluster.org/release-schedule/))
+
+2. Release 6 will receive maintenance updates around the 30th of every month
+for the first 3 months post release (i.e Mar'19, Apr'19, May'19). Post the
+initial 3 months, it will receive maintenance updates every 2 months till EOL.
+([reference](https://lists.gluster.org/pipermail/announce/2018-July/000103.html))
+
+3. A series of features/xlators have been deprecated in release 6 as follows,
+for upgrade procedures from volumes that use these features to release 6 refer
+to the release 6 [upgrade guide](https://docs.gluster.org/en/latest/Upgrade-Guide/upgrade_to_6/).
+
+This deprecation was announced at the gluster-users list [here](https://lists.gluster.org/pipermail/gluster-users/2018-July/034400.html).
+
+Features deprecated:
+- Block device (bd) xlator
+- Decompounder feature
+- Crypt xlator
+- Symlink-cache xlator
+- Stripe feature
+- Tiering support (tier xlator and changetimerecorder)
+
+## Major changes and features
+
+Features are categorized into the following sections,
+
+- [Management](#management)
+- [Standalone](#standalone)
+- [Developer](#developer)
+
+### Management
+
+#### GlusterD2
+
+TODO: Fill in GD2 status, as pertaining to GCS (container storage) release.
+
+### Standalone
+
+#### 1. Glusterfind tool enhanced with a filter option
+
+glusterfind tool has an added option "--type", to be used with the "--full"
+option. The option supports finding and listing files or directories only, and
+defaults to both if not specified.
+
+Example usage with the pre and query commands are given below,
+1. Pre command ([reference](https://docs.gluster.org/en/latest/GlusterFS%20Tools/glusterfind/#pre-command)):
+- Lists both files and directories in OUTFILE:
+ `glusterfind pre SESSION_NAME VOLUME_NAME OUTFILE`
+
+- Lists only files in OUTFILE:
+ `glusterfind pre SESSION_NAME VOLUME_NAME OUTFILE --type f`
+
+- Lists only directories in OUTFILE:
+ `glusterfind pre SESSION_NAME VOLUME_NAME OUTFILE --type d`
+
+2. Query command:
+- Lists both files and directories in OUTFILE:
+ `glusterfind query VOLUME_NAME --full OUTFILE`
+
+- Lists only files in OUTFILE:
+ `glusterfind query VOLUME_NAME --full --type f OUTFILE`
+
+- Lists only directories in OUTFILE:
+ `glusterfind query VOLUME_NAME --full --type d OUTFILE`
+
+#### 2. FUSE mounts are enhanced to handle interrupts to blocked lock requests
+
+FUSE mounts are enhanced to handle interrupts to blocked locks.
+
+For example scripts using flock (`man 1 flock`) utility without the -n(nonblock)
+option against files on a FUSE based gluster mount, can now be interrupted when
+the lock is not granted in time or using the -w option from the same utility.
+
+#### 3. client-side inode garbage collection via LRU list
+
+A FUSE mounts inode cache can now be limited to a maximum number, thus reducing
+the memory footprint of FUSE mount processes.
+
+See lru-limit option in `man 8 mount.glusterfs` for usage details.
+
+NOTE: Setting this to low numbers (say less than 4000), will evict inodes from
+FUSE and Gluster caches at a much faster rate, and can cause performance
+degrades. The setting has to be balanced across available client memory and
+performance.
+
+#### 4. Optimized/pass-through distribute functionality for 1-way distributed volumes
+
+**NOTE:** There are no user controllable changes with this feature
+
+Distribute xlator is optimized, to mostly pass-through operations, when the
+distribute count is one for a volume, resulting in improved performance.
+
+#### 5. Options introduced to disable invalidations of kernel page cache
+
+For workloads, where multiple FUSE client mounts do not concurrently operate on
+any files in the volume, it is now possible to maintain a longer duration kernel
+page cache using the following options in conjunction,
+
+- Setting `--auto-invalidation` option to "no" on the glusterfs FUSE mount
+process
+- Disabling the volume option `performance.global-cache-invalidation`
+
+This enables better performance as the data is served from the kernel page cache
+where possible.
+
+### Developer
+
+#### 1. Gluster code can be compiled and executed using [TSAN](https://clang.llvm.org/docs/ThreadSanitizer.html)
+
+While configuring the sources for a build use the extra option `--enable-tsan`
+to enable thread sanitizer based builds.
+
+#### 2. gfapi: A class of APIs have been enhances to return pre/post gluster_stat information
+
+A set of [apis](https://github.com/gluster/glusterfs/blob/release-6/api/src/gfapi.map#L245) have been enhanced to return pre/post gluster_stat information.
+Applications using gfapi would need to adapt to the newer interfaces to compile
+against release-6 apis. Pre-compiled applications, or applications using the
+older API SDK will continue to work as before.
+
+## Major issues
+
+<TODO>
+
+## Bugs addressed
+
+Bugs addressed since release-5 are listed below.
+<TODO>