Description of problem: When you have distribute or disperse volume, and you set data-self-heal, metadata-self-heal and entry-self-heal options on/off it succeeds. Since when you try to set self-heal-daemon off/on on distribute, disperse volume , it give error self-heal-daemon can be set on distribute-replicate volume. Same error should be displayed when user tries to set data-self-heal, metadata-self-heal and entry-self-heal options on/off. Version-Release number of selected component (if applicable): [root@darkknightrises ~]# rpm -qa | grep glusterfs glusterfs-client-xlators-3.7.1-4.el6rhs.x86_64 glusterfs-cli-3.7.1-4.el6rhs.x86_64 samba-vfs-glusterfs-4.1.17-7.el6rhs.x86_64 glusterfs-libs-3.7.1-4.el6rhs.x86_64 glusterfs-3.7.1-4.el6rhs.x86_64 glusterfs-api-3.7.1-4.el6rhs.x86_64 glusterfs-server-3.7.1-4.el6rhs.x86_64 glusterfs-debuginfo-3.7.1-4.el6rhs.x86_64 glusterfs-fuse-3.7.1-4.el6rhs.x86_64 glusterfs-geo-replication-3.7.1-4.el6rhs.x86_64 How reproducible: 100% Steps to Reproduce: 1. Create distribute volume 2. set data-self-heal, metadata-self-heal and entry-self-heal option on/off. e.g gluster v set <vol-name> data-self-heal off 3. Actual results: Commands succeeds Expected results: Check should there, if there is distribute-replicate volume , then only data-self-heal, metadata-self-heal and entry-self-heal option should be allowed to set Additional info:
Fixed upstream (http://review.gluster.org/#/c/12215/) - can be taken for the next downstream release.
[root@dhcp47-158 .unsupported]# gluster v info ecvol Volume Name: ecvol Type: Disperse Volume ID: cc5334be-d75c-4027-957a-a548c7f27c04 Status: Started Number of Bricks: 1 x (4 + 2) = 6 Transport-type: tcp Bricks: Brick1: 10.70.47.158:/rhs/brick4/ec1 Brick2: 10.70.47.188:/rhs/brick4/ec2 Brick3: 10.70.47.170:/rhs/brick4/ec3 Brick4: 10.70.47.162:/rhs/brick4/ec4 Brick5: 10.70.47.158:/rhs/brick5/ec5 Brick6: 10.70.47.188:/rhs/brick5/ec6 Options Reconfigured: performance.readdir-ahead: on [root@dhcp47-158 .unsupported]# gluster v set ecvol metadata-self-heal off volume set: failed: Cannot set metadata-self-heal for a non-replicate volume. [root@dhcp47-158 .unsupported]# gluster v set ecvol data-self-heal off volume set: failed: Cannot set data-self-heal for a non-replicate volume. [root@dhcp47-158 .unsupported]# gluster v set ecvol entry-self-heal off volume set: failed: Cannot set entry-self-heal for a non-replicate volume. [root@dhcp47-158 .unsupported]# gluster v set ecvol self-heal-daemon off volume set: failed: Volume ecvol is not of replicate type Bug verified on build glusterfs-3.7.9-10.el7rhgs.x86_64