diff options
authorShyamsundarR <>2017-08-29 11:06:55 -0400
committerShyamsundar Ranganathan <>2017-08-29 15:42:47 +0000
commit524b0579654cf44d4fd99841ad962dcb12715ea6 (patch)
parent5b0c2b45144b620507a00df7488966abb979fd20 (diff)
doc: Finalized release notes for 3.12.0 release
Change-Id: I210f8a3278f6f34e69ae7530e53370dcfab3d9d5 BUG: 1473826 Signed-off-by: ShyamsundarR <> Reviewed-on: Smoke: Gluster Build System <> CentOS-regression: Gluster Build System <>
1 files changed, 57 insertions, 54 deletions
diff --git a/doc/release-notes/ b/doc/release-notes/
index 5dd753f..da5deb1 100644
--- a/doc/release-notes/
+++ b/doc/release-notes/
@@ -1,25 +1,34 @@
# Release notes for Gluster 3.12.0
-This is a major Gluster release that includes, ability to mount sub-directories,
-further brick multiplexing enhancements, enhancements to gluster get-state CLI,
-ability to resolve GFID split-brain using existing CLI, easier GFID to real path
-mapping, among other changes.
+This is a major Gluster release that includes, ability to mount sub-directories
+using the Gluster native protocol (FUSE), further brick multiplexing
+enhancements that help scale to larger brick counts per node, enhancements to
+gluster get-state CLI enabling better understanding of various bricks and nodes
+participation/roles in the cluster, ability to resolve GFID split-brain using
+existing CLI, easier GFID to real path mapping thus enabling easier diagnostics
+and correction for reported GFID issues (healing among other uses where GFID is
+the only available source for identifying a file), and other changes and fixes.
The most notable features and changes are documented on this page. A full list
of bugs that have been addressed is included further below.
+Further, as 3.11 release is a short term maintenance release, features included
+in that release are available with 3.12 as well, and could be of interest to
+users upgrading to 3.12 from older than 3.11 releases. The 3.11 [release notes](
+captures the list of features that were introduced with 3.11.
## Major changes and features
### Ability to mount sub-directories using the Gluster FUSE protocol
**Notes for users:**
-Gluster FUSE mounts, till now, mounted the entire volume on the client. With
-this feature, it is now possible to define which sub-directories can be mounted,
-by which client, and further for the clients to mount only that portion of the
-volume for access.
+With this release, it is possible define sub-directories to be mounted by
+specific clients and additional granularity in the form of clients to mount
+only that portion of the volume for access.
-This helps sharing a volume among multiple consumers and also restricting their
-access to the sub-directory of choice.
+Until recently, Gluster FUSE mounts enabled mounting the entire volume on the
+client. This feature helps sharing a volume among the multiple consumers along
+with enabling restricting access to the sub-directory of choice.
Option controlling sub-directory allow/deny rules can be set as follows:
@@ -37,11 +46,13 @@ Or,
+- There are no throttling or QoS support for this feature. The feature will
+just provide the namespace isolation for the different clients.
**Known Issues:**
+- Once we cross more than 1000s of subdirs in 'auth.allow' option, the
+performance of reconnect / authentication would be impacted.
### GFID to path conversion is enabled by default
**Notes for users:**
@@ -58,19 +69,15 @@ attributes.
The internal on disk xattr that is now stored to reference the filename and
parent for a GFID is, `trusted.gfid2path.<xxhash>`
-Currently with RC0 this feature is not enabled by default. To enable this
-feature use,
-#gluster volume <volname> set storage.gfid2path
+This feature is enabled by default with this release.
**Known Issues:**
### Various enhancements have been made to the output of get-state CLI command
**Notes for users:**
@@ -88,42 +95,26 @@ details of the same
**Known Issues:**
### Provided an option to set a limit on number of bricks multiplexed in a processes
**Notes for users:**
-This feature introduces a new global option that can be set to limit the number
-of multiplexed bricks in one process.
-With the current brick multiplexing feature, all bricks are multiplexed into the
-same process. The option, introduced with this feature, lets the user control
-the number of bricks that are multiplexed in a process, on a node.
-More processes are spawned to hold bricks, if the limit set by this option is
-insufficient for a single process. IOW, with this option set, number fo brick
-processes(P) are, P = N/<value>, where (N) is the number of bricks in the node,
-and <value> is the what is set by the *cluster.max-bricks-per-process* option.
-This option is used only if brick multiplexing is enabled for the cluster.
+This release includes a global option to be switched on only if brick
+multiplexing is enabled for the cluster. The introduction of this option allows
+the user to control the number of bricks that are multiplexed in a process on a
+node. If the limit set by this option is insufficient for a single process,
+more processes are spawned for the subsequent bricks.
#gluster volume set all cluster.max-bricks-per-process <value>
-**Known Issues:**
### Provided an option to use localtime timestamps in log entries
@@ -152,14 +143,6 @@ of these variables have been corrected to reflect
and also enhancing the ability for file placement in the distribute translator
when used with the option `min-free-disk`.
-**Known Issues:**
### Provided a means to resolve GFID split-brain using the gluster CLI
**Notes for users:**
@@ -177,17 +160,17 @@ volume heal <VOLNAME> split-brain {bigger-file <FILE> |
**Known Issues:**
### Developer related: Added a 'site.h' for more vendor/company specific defaults
**Notes for developers:**
-**NOTE**: Also for users building from sources and needing different defaults
-for some options
+**NOTE**: Also relevant for users building from sources and needing different
+defaults for some options
Most people consume Gluster in one of two ways:
* From packages provided by their OS/distribution vendor
@@ -432,3 +415,23 @@ Bugs addressed since release-3.11.0 are listed below.
- [#1477405]( eager-lock should be off for cassandra to work at the moment
- [#1477994]( [Ganesha] : Ganesha crashes while cluster enters failover/failback mode
- [#1478276]( separating attach tier and add brick
+- [#1479118]( AFR entry self heal removes a directory's .glusterfs symlink.
+- [#1479263]( nfs process crashed in "nfs3svc_getattr"
+- [#1479303]( [Perf] : Large file sequential reads are off target by ~38% on FUSE/Ganesha
+- [#1479474]( Add NULL gfid checks before creating file
+- [#1479655]( Permission denied errors when appending files after readdir
+- [#1479662]( when gluster pod is restarted, bricks from the restarted pod fails to connect to fuse, self-heal etc
+- [#1479717]( Running sysbench on vm disk from plain distribute gluster volume causes disk corruption
+- [#1480448]( More useful error - replace 'not optimal'
+- [#1480459]( Gluster puts PID files in wrong place
+- [#1481931]( [Scale] : I/O errors on multiple gNFS mounts with "Stale file handle" during rebalance of an erasure coded volume.
+- [#1482804]( Negative Test: glusterd crashes for some of the volume options if set at cluster level
+- [#1482835]( glusterd fails to start
+- [#1483402]( DHT: readdirp fails to read some directories.
+- [#1483996]( packaging: use rdma-core(-devel) instead of ibverbs, rdmacm; disable rdma on armv7hl
+- [#1484440]( packaging: /run and /var/run; prefer /run
+- [#1484885]( [rpc]: EPOLLERR - disconnecting now messages every 3 secs after completing rebalance
+- [#1486107]( /var/lib/glusterd/peers File had a blank line, Stopped Glusterd from starting
+- [#1486110]( [quorum]: Replace brick is happened when Quorum not met.
+- [#1486120]( symlinks trigger faulty geo-replication state (rsnapshot usecase)
+- [#1486122]( gluster-block profile needs to have strict-o-direct