Red Hat Bugzilla – Bug 810502
ping_pong application hangs on fuse mounts
Last modified: 2015-12-01 11:45:32 EST
Description of problem:
Even after all locks (both blocked and active locks) on the ping_pong file are cleared, ping_pong application doesn't exit but hangs on the fuse mounts.
Before the clear-locks, the replace-brick operation was also initiated.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1.create a distribute-replicate volume(3x3).
2.set auth.allow option to <ip_address_of_client)
[04/06/12 - 21:57:30 root@APP-SERVER1 ~]# gluster volume info
Volume Name: dstore
Volume ID: f69cd573-751f-45dd-b741-4bb9caa7cffc
Number of Bricks: 3 x 3 = 9
3.create 1 fuse mount from a machine.
4.start 4-5 instances of ping_pong from the same mount ("/usr/sbin/ping_pong ping_pong_file -rw 100 50 300")
5.gluster volume statedump <volume_name>. check if there are blocked locks on ping_pong file
6.while there are blocked locks on ping_pong file execute:
"gluster volume replace-brick <volume_name> <old_brick> <new_brick> start"
(select the brick which has ping_pong file to replace)
7.gluster volume clear-locks <volume_name> /ping_pong_file kind blocked inode
8.gluster volume replace-brick <volume_name> <old_brick> <new_brick> commit
9.gluster volume clear-locks <volume_name> /ping_pong_file kind blocked posix
10.gluster volume clear-locks <volume_name> /ping_pong_file kind all posix
CHANGE: http://review.gluster.com/3221 (cluster/afr: Perform Flush with lk-owner given by parent xlator.) merged in master by Vijay Bellur (firstname.lastname@example.org)
CHANGE: http://review.gluster.com/3228 (cluster/afr: Fix inodelk-trace logs to print lk-owners) merged in master by Vijay Bellur (email@example.com)
This bug still exists on 3.3.0qa41
CHANGE: http://review.gluster.com/3365 (features/locks: insert_and_merge should not operate on blocked locks) merged in master by Anand Avati (firstname.lastname@example.org)
CHANGE: http://review.gluster.com/3366 (features/locks: Don't delete blocked locks in pl_flush) merged in master by Anand Avati (email@example.com)
Bug is fixed. Verified on 3.3.0qa43