In brick_mux environment, while volumes are created/stopped in a loop after running a long time the main brick is crashed.
Brick is crashed because the main brick process was not cleaned up memory for all objects at the time of detaching a volume.
Below are the objects that are missed at the time of detaching a volume
1) xlator object for a brick graph
2) local_pool for posix_lock xlator
3) rpc object cleanup at quota xlator
4) inode leak at brick xlator
To avoid the leak needs to clean up all objects at the time of detaching a brick.
1.created 3 node setup, brickmux enabled
2.created 2 volumes, one called base_x3 of type x3, and another of type arbiter named "basevol_bitter"
the above 2 volumes will not be deleted at all throughout the test
3.now started creating volumes, starting them in batches of 100, and then delete them
4. the above step#3 was to go on for a few days
This bug is moved to https://github.com/gluster/glusterfs/issues/977, and will be tracked there from now on. Visit GitHub issues URL for further details
REVIEW: https://review.gluster.org/24221 (Posix: Use simple approach to close fd) posted (#10) for review on master by MOHIT AGRAWAL
REVIEW: https://review.gluster.org/24221 (Posix: Use simple approach to close fd) merged (#10) on master by MOHIT AGRAWAL