Bug 1290151 - hook script for CTDB should not change Samba config
hook script for CTDB should not change Samba config
Status: CLOSED CURRENTRELEASE
Product: GlusterFS
Classification: Community
Component: gluster-smb (Show other bugs)
mainline
Unspecified Unspecified
medium Severity medium
: ---
: ---
Assigned To: bugs@gluster.org
: Triaged
Depends On:
Blocks: 1292254 1292605 1292751
  Show dependency treegraph
 
Reported: 2015-12-09 13:36 EST by Michael Adam
Modified: 2016-06-16 09:49 EDT (History)
2 users (show)

See Also:
Fixed In Version: glusterfs-3.8rc2
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1292254 (view as bug list)
Environment:
Last Closed: 2016-06-16 09:49:41 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Michael Adam 2015-12-09 13:36:10 EST
There are several reasons why the behaviour in
the hook scripts was bad:

1. A samba installation is clustered or non-clustered.
   That does not change because of the availability
   of the CTDB lock-volume. If the lock-volume is not
   available (and hence CTDB is not available or not
   healthy), then Samba won't be operational. But turning
   it into a non-clustered Samba-installation can in
   the worst case lead to data corruption if clients
   manage to access the same files (on share volumes).
   Hence 'clustering = yes/no' in Samba's config should
   not be touched.

   In particular, Samba should not be stopped/started by
   the hook script. If needed, then ctdb will take care
   of it.

2. Changing the idmap configuration is potentially
   dangerous as well. In particular the used tdb2
   backend is legacy nowadays and should not be used
   any more in new installs. (I stems from the times
   when ctdb could not host persistent databases.)
   Changing the idmap can result in loss of access
   to files or in giving access to files where it is
   not intended.

3. The pattern used for detecting need for change is
   fragile. It may or may not play well possible
   manual changes to smb.conf.

Hence the hook scripts should be changed not to do this.
Comment 1 Vijay Bellur 2015-12-09 13:37:26 EST
REVIEW: http://review.gluster.org/12930 (hook-scripts: don't let ctdb script change samba config) posted (#1) for review on master by Michael Adam (obnox@samba.org)
Comment 2 Vijay Bellur 2015-12-10 01:11:42 EST
REVIEW: http://review.gluster.org/12930 (hook-scripts: don't let ctdb script change samba config) posted (#2) for review on master by Michael Adam (obnox@samba.org)
Comment 3 Vijay Bellur 2015-12-10 04:31:06 EST
REVIEW: http://review.gluster.org/12930 (hook-scripts: don't let ctdb script change samba config) posted (#3) for review on master by Michael Adam (obnox@samba.org)
Comment 4 Vijay Bellur 2015-12-16 14:13:45 EST
COMMIT: http://review.gluster.org/12930 committed in master by Raghavendra Talur (rtalur@redhat.com) 
------
commit 27c16d6da82876a689dfba53b8d45c3a3a657954
Author: Michael Adam <obnox@samba.org>
Date:   Wed Dec 9 18:57:59 2015 +0100

    hook-scripts: don't let ctdb script change samba config
    
    There are several reasons why the behaviour in
    the hook scripts was bad:
    
    1. A samba installation is clustered or non-clustered.
       That does not change because of the availability
       of the CTDB lock-volume. If the lock-volume is not
       available (and hence CTDB is not available or not
       healthy), then Samba won't be operational. But turning
       it into a non-clustered Samba-installation can in
       the worst case lead to data corruption if clients
       manage to access the same files (on share volumes).
       Hence 'clustering = yes/no' in Samba's config should
       not be touched.
    
       In particular, Samba should not be stopped/started by
       the hook script. If needed, then ctdb will take care
       of it.
    
    2. Changing the idmap configuration is potentially
       dangerous as well. In particular the used tdb2
       backend is legacy nowadays and should not be used
       any more in new installs. (I stems from the times
       when ctdb could not host persistent databases.)
       Changing the idmap can result in loss of access
       to files or in giving access to files where it is
       not intended.
    
    3. The pattern used for detecting need for change is
       fragile. It may or may not play well possible
       manual changes to smb.conf.
    
    This change removes the parts that change the smb.conf
    file and start or stop Samba from the S29CTDB* hook scripts.
    
    Change-Id: I72f7aabafa8f089da4531fca2572a72c22825bcc
    BUG: 1290151
    Signed-off-by: Michael Adam <obnox@samba.org>
    Reviewed-on: http://review.gluster.org/12930
    Tested-by: Gluster Build System <jenkins@build.gluster.com>
    Reviewed-by: Raghavendra Talur <rtalur@redhat.com>
Comment 5 Niels de Vos 2016-06-16 09:49:41 EDT
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.8.0, please open a new bug report.

glusterfs-3.8.0 has been announced on the Gluster mailinglists [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://blog.gluster.org/2016/06/glusterfs-3-8-released/
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

Note You need to log in before you can comment on or make changes to this bug.