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)
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
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>
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/
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