Bug 1107984 - Dist-geo-rep : Glusterd crashed while resetting use-tarssh config option in geo-rep.
Summary: Dist-geo-rep : Glusterd crashed while resetting use-tarssh config option in g...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: geo-replication
Version: mainline
Hardware: x86_64
OS: Linux
unspecified
urgent
Target Milestone: ---
Assignee: Kotresh HR
QA Contact:
URL:
Whiteboard:
Depends On: 1107665
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-06-11 08:45 UTC by Kotresh HR
Modified: 2014-11-11 08:34 UTC (History)
6 users (show)

Fixed In Version: glusterfs-3.6.0beta1
Doc Type: Bug Fix
Doc Text:
Clone Of: 1107665
Environment:
Last Closed: 2014-11-11 08:34:50 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Comment 1 Anand Avati 2014-06-11 08:55:27 UTC
REVIEW: http://review.gluster.org/8032 (geo-rep/glusterd: Fix glusterd crash during geo-rep config reset.) posted (#1) for review on master by Kotresh HR (khiremat)

Comment 2 Kotresh HR 2014-06-11 08:59:58 UTC
Description of problem: Glusterd crashed while resetting geo-rep config options. 

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
# gluster v geo master 10.70.43.170::slave config \!use-tarssh     
Connection failed. Please check if gluster daemon is operational.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

bt
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[2014-06-10 11:50:37.850691] I [glusterd-rpc-ops.c:556:__glusterd_friend_update_cbk] 0-management: Received ACC from uuid: 0c14822d-ca1a-4145-9d4b-34714fa3f15a
[2014-06-10 11:50:38.840641] I [glusterd-geo-rep.c:1833:glusterd_get_statefile_name] 0-: Using passed config template(/var/lib/glusterd/geo-replication/master_10.70.43.170_slave/gsyncd.conf).
pending frames:
frame : type(0) op(0)
patchset: git://git.gluster.com/glusterfs.git
signal received: 11
time of crash:
2014-06-10 11:50:40
configuration details:
argp 1
backtrace 1
dlfcn 1
libpthread 1
llistxattr 1
setfsid 1
spinlock 1
epoll.h 1
xattr.h 1
st_atim.tv_nsec 1
package-string: glusterfs 3.6.0.15
/usr/lib64/libglusterfs.so.0(_gf_msg_backtrace_nomem+0xb6)[0x7fddbd74be56]
/usr/lib64/libglusterfs.so.0(gf_print_trace+0x33f)[0x7fddbd76628f]
/lib64/libc.so.6[0x3f3f4329a0]
/usr/lib64/glusterfs/3.6.0.15/xlator/mgmt/glusterd.so(glusterd_gsync_op_already_set+0x1bb)[0x7fddafd6f45b]
/usr/lib64/glusterfs/3.6.0.15/xlator/mgmt/glusterd.so(glusterd_op_gsync_set+0xf3f)[0x7fddafd7619f]
/usr/lib64/glusterfs/3.6.0.15/xlator/mgmt/glusterd.so(glusterd_op_commit_perform+0x276)[0x7fddafd1b806]
/usr/lib64/glusterfs/3.6.0.15/xlator/mgmt/glusterd.so(gd_commit_op_phase+0xbe)[0x7fddafd9168e]
/usr/lib64/glusterfs/3.6.0.15/xlator/mgmt/glusterd.so(gd_sync_task_begin+0x7f2)[0x7fddafd933b2]
/usr/lib64/glusterfs/3.6.0.15/xlator/mgmt/glusterd.so(glusterd_op_begin_synctask+0x3b)[0x7fddafd9340b]
/usr/lib64/glusterfs/3.6.0.15/xlator/mgmt/glusterd.so(__glusterd_handle_gsync_set+0x171)[0x7fddafd76fc1]
/usr/lib64/glusterfs/3.6.0.15/xlator/mgmt/glusterd.so(glusterd_big_locked_handler+0x3f)[0x7fddafcf8e2f]
/usr/lib64/libglusterfs.so.0(synctask_wrap+0x12)[0x7fddbd787742]
/lib64/libc.so.6[0x3f3f443bf0]
---------


How reproducible: happens everytime. 



Steps to Reproduce:
1.create and start a geo-rep relationship between master and slave
2. set geo-rep config option use-tarssh t true.
3. then reset it using the command "gluster volume geo {master-vol} {slave-url} config \!use-tarssh" 

Actual results: glusterd crashes. 


Expected results: glusterd shouldn't crash

Comment 3 Anand Avati 2014-06-12 07:24:26 UTC
COMMIT: http://review.gluster.org/8032 committed in master by Venky Shankar (vshankar) 
------
commit afeaab53f6ca450a3147a6230906a83ee1bebe5a
Author: Kotresh H R <khiremat>
Date:   Wed Jun 11 14:18:02 2014 +0530

    geo-rep/glusterd: Fix glusterd crash during geo-rep config reset.
    
    Problem:
    When "\!<config-option>" (i.e., reset) is used in geo-rep config,
    glusterd crashes with NULL pointer dereference of 'op_value' in
    glusterd_gsync_op_already_set.
    
    Solution:
    glusterd_gsync_op_already_set should be called only for geo-rep
    set option. So bypass glusterd_gsync_op_already_set for reset.
    
    Change-Id: I9d8ef242abf02011139d76a72564f66d68cc8585
    BUG: 1107984
    Signed-off-by: Kotresh H R <khiremat>
    Reviewed-on: http://review.gluster.org/8032
    Reviewed-by: Avra Sengupta <asengupt>
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Venky Shankar <vshankar>
    Tested-by: Venky Shankar <vshankar>

Comment 4 Niels de Vos 2014-09-22 12:42:38 UTC
A beta release for GlusterFS 3.6.0 has been released. Please verify if the release solves this bug report for you. In case the glusterfs-3.6.0beta1 release does not have a resolution for this issue, leave a comment in this bug and move the status to ASSIGNED. If this release fixes the problem for you, leave a note and change the status to VERIFIED.

Packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update (possibly an "updates-testing" repository) infrastructure for your distribution.

[1] http://supercolony.gluster.org/pipermail/gluster-users/2014-September/018836.html
[2] http://supercolony.gluster.org/pipermail/gluster-users/

Comment 5 Niels de Vos 2014-11-11 08:34:50 UTC
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.6.1, please reopen this bug report.

glusterfs-3.6.1 has been announced [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://supercolony.gluster.org/pipermail/gluster-users/2014-November/019410.html
[2] http://supercolony.gluster.org/mailman/listinfo/gluster-users


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