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.
May be with a 'option' in volume file, or with a CLI 'start' volume itself.
CHANGE: http://review.gluster.com/311 (By enabling the brick-with-valgrind option in glusterd,) merged in master by Vijay Bellur (vijay)
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