Issued:
2017-06-08
Updated:
2017-06-08

RHBA-2017:1418 - glusterfs bug fix update


Synopsis

glusterfs bug fix update

Type/Severity

Bug Fix Advisory None

Topic

Updated glusterfs packages that fix several bugs are now available for Red Hat Gluster Storage 3.2 on Red Hat Enterprise Linux 7.

Description

Red Hat Gluster Storage is a software only scale-out storage solution that provides flexible and affordable unstructured data storage. It unifies data storage and infrastructure, increases performance, and improves availability and manageability to meet enterprise-level storage challenges.

This update provides an enhancement and fixes the following bugs:

  • Previously, there was a race between layout change on /.shard directory and creation of shards under it as part of parallel ongoing IO operations. This was causing the same shard to exist on multiple subvolumes with different copies of the same shard having witnessed different writes from the application. As a consequence, by virtue of neither shard having complete data, the image was corrupted, making the VM unbootable. With this fix, shard will send LOOKUP on a shard before trying to create it, so that DHT would identify any already existing shard and ensures there would always be one copy of every shard and writes will always be directed to it. Now, the VMs operate correctly when IO and rebalance operations are running in parallel. (BZ# 1439753)

  • The removal of a directory which appears to be empty when accessed via the mount point but which contained stale linkto files fails with the "Directory not empty" error. This was because the stale linkto files are not listed on the mount point but the directories on the bricks are actually not empty. This caused rm -rf to fail as the directory actually contains files on the bricks. With this fix, the rmdir operation will now delete all stale linkto files in the directory before proceeding to delete the directory. (BZ# 1447186)

  • Previously, creation of snapshot sometimes failed on a geo-replicated volume, even after stopping the session. This was due to a bug in the way the gusterd builds up state of in-memory active geo-replication sessions. With this fix, you can successfully create snapshots of a geo-replicated volume. (BZ# 1445591)

  • Previously, a bug in shard's in-memory cache invalidation in STAT fop was causing it to send lots of LOOKUPs as part of cache-invalidation, even when the file was not undergoing any modification. As a consequence, every STAT call from the application is followed by a LOOKUP, leading to a sub-optimal performance of I/O operations on the VMs. With this fix, in-memory cache invalidation in shard's STAT operation was corrected. Now, in a pure-read workload, there was not as many LOOKUPs as the number of STATs, leading to improved VM performance. This also benefited performance in mixed read-write workload from the VMs. (BZ# 1439731)

  • Previously, creation of snapshot failed on a geo-replicated volume if it had a secured geo-replication slave. This was due to an issue in the geo-replication directory naming convention. With this fix, you can successfully create snapshots of a geo-replicated volume even if it has a secured geo-replication slave. (BZ# 1445593)

  • Gluster's FUSE mount process can now process 'auto_unmount' flag. With this new mount option, Gluster FUSE mount process will not leave a 'stale mount point', in case the client process terminates abnormally (like SIGTERM, SIGSEGV, and so on).(BZ# 1456420)

All users of Red Hat Gluster Storage are advised to upgrade to these updated packages.

Solution

Before applying this update, make sure all previously released errata relevant to your system have been applied.

For details on how to apply this update, refer to:

https://access.redhat.com/articles/11258

Affected Products

ProductVersionArch
Red Hat Virtualization4x86_64
Red Hat Virtualization Host4x86_64
Red Hat Gluster Storage Server for On-premise3x86_64
Red Hat Enterprise Linux Server7x86_64

Updated Packages

  • glusterfs-rdma-3.8.4-18.4.el7rhgs.x86_64.rpm
  • python-gluster-3.8.4-18.4.el7.noarch.rpm
  • glusterfs-3.8.4-18.4.el7.x86_64.rpm
  • glusterfs-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-fuse-3.8.4-18.4.el7.x86_64.rpm
  • glusterfs-ganesha-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-debuginfo-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-events-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-libs-3.8.4-18.4.el7.x86_64.rpm
  • python-gluster-3.8.4-18.4.el7rhgs.noarch.rpm
  • glusterfs-api-devel-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-geo-replication-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-fuse-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-3.8.4-18.4.el7rhgs.src.rpm
  • glusterfs-cli-3.8.4-18.4.el7.x86_64.rpm
  • glusterfs-client-xlators-3.8.4-18.4.el7.x86_64.rpm
  • glusterfs-devel-3.8.4-18.4.el7.x86_64.rpm
  • glusterfs-debuginfo-3.8.4-18.4.el7.x86_64.rpm
  • glusterfs-api-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-libs-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-api-devel-3.8.4-18.4.el7.x86_64.rpm
  • glusterfs-devel-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-server-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-client-xlators-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-3.8.4-18.4.el7.src.rpm
  • glusterfs-api-3.8.4-18.4.el7.x86_64.rpm
  • glusterfs-cli-3.8.4-18.4.el7rhgs.x86_64.rpm
  • glusterfs-rdma-3.8.4-18.4.el7.x86_64.rpm

Fixes

CVEs

(none)

References

(none)


Additional information