Bug 765193 (GLUSTER-3461)

Summary: provide a option to start processes with valgrind in runner
Product: [Community] GlusterFS Reporter: Amar Tumballi <amarts>
Component: glusterdAssignee: Rajesh <rajesh>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: low Docs Contact:
Priority: medium    
Version: mainlineCC: gluster-bugs, rabhat, vagarwal, vraman
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: glusterfs-3.3.0qa10 Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Amar Tumballi 2011-08-22 07:27:42 UTC
Tasks to be done:

* Handle a option 'runner-with-valgrind' in glusterd.c init(). (default value is 'disable'.

* Set a value in 'priv' if it is set (ie, enabled).

* If the 'priv->runner_with_valgrind' is set, in glusterd-utils.c, while starting glusterfsd, start it with 'valgrind --leak-check=full --log-file=LOGPATH/bricks/valgrind-<VOLNAME>-<BRICK_PATH>.log'

thats all.

Comment 1 Amar Tumballi 2011-08-22 10:10:43 UTC
May be with a 'option' in volume file, or with a CLI 'start' volume itself.

Comment 2 Anand Avati 2011-09-19 09:39:15 UTC
CHANGE: http://review.gluster.com/311 (By enabling the brick-with-valgrind option in glusterd,) merged in master by Vijay Bellur (vijay)

Comment 3 Raghavendra Bhat 2011-09-23 07:46:47 UTC
oChecked with glusterfs-3.3.0qa10. Started gluster, edited glusterd volfile and added the line option brick-with-valgrind on in the glusterd log file. Then started gluster, created a volume and started it.

These are the commands executred and the results.

glusterd
root@hyperspace:~# less /usr/local/var/log/glusterfs/usr-local-etc-glusterfs-glusterd.vol.log 
root@hyperspace:~# ps aux | grep gluster
raghu    21064  0.0  0.0  45088  3180 pts/10   S+   15:32   0:00 ssh gluster.com
root     29873  0.0  0.2  51912  8188 ?        Ssl  16:10   0:00 glusterd
root     29899  0.0  0.0  13124  1064 pts/11   S+   16:11   0:00 grep --color=auto gluster
root@hyperspace:~# less /usr/local/var/log/glusterfs/usr-local-etc-glusterfs-glusterd.vol.log 
root@hyperspace:~# rm -rf /mnt/sda{7,8}/export2
root@hyperspace:~# gluster volume create vol hyperspace:/mnt/sda7/export2
Creation of volume vol has been successful. Please start the volume to access data.
root@hyperspace:~# gluster volume info
 
Volume Name: vol
Type: Distribute
Status: Created
Number of Bricks: 1
Transport-type: tcp
Bricks:
Brick1: hyperspace:/mnt/sda7/export2
root@hyperspace:~# gluster volume start vol
Starting volume vol has been successful
root@hyperspace:~# ps aux | grep glsuter^C
root@hyperspace:~# pgluster 
raghu    21064  0.0  0.0  45088  3180 pts/10   S+   15:32   0:00 ssh gluster.com
root     29873  0.4  2.1 189820 87200 ?        Ssl  16:10   0:00 glusterd
root     29926 16.2  2.0 222092 79436 ?        Ssl  16:11   0:01 /usr/bin/valgrind.bin --leak-check=full --trace-children=yes --log-file=/usr/local/var/log/glusterfs/bricks/valgrnd-vol-mnt-sda7-export2.log /usr/local/sbin/glusterfsd -s localhost --volfile-id vol.hyperspace.mnt-sda7-export2 -p /etc/glusterd/vols/vol/run/hyperspace-mnt-sda7-export2.pid -S /tmp/ce8306b46edc6a6da057a8729fc80ba7.socket --brick-name /mnt/sda7/export2 -l /usr/local/var/log/glusterfs/bricks/mnt-sda7-export2.log --brick-port 24009 --xlator-option vol-server.listen-port=24009
root     29932  1.4  2.3 192320 93404 ?        Ssl  16:11   0:00 /usr/local/sbin/glusterfs -f /etc/glusterd/nfs/nfs-server.vol -p /etc/glusterd/nfs/run/nfs.pid -l /usr/local/var/log/glusterfs/nfs.log
root     29941  0.0  0.0  16288  1572 pts/11   S+   16:12   0:00 /bin/bash /bin/pgluster
root     29943  0.0  0.0  13128  1056 pts/11   S+   16:12   0:00 grep gluster