+++ This bug was initially created as a clone of Bug #1708156 +++ Description of problem: When an inodelk is being acquired, it could happen that some bricks have already granted the lock while others don't. From the point of view of ec, the lock is not yet acquired. If at this point one of the bricks that has already granted the lock receives another inodelk request, it will send a contention notification to ec. Currently ec ignores those notifications until the lock is fully acquired. This means than once ec acquires the lock on all bricks, it won't be released immediately when eager-lock is used. Version-Release number of selected component (if applicable): mainline How reproducible: Very frequently when there are multiple concurrent operations on same directory Steps to Reproduce: 1. Create a disperse volume 2. Mount it from several clients 3. Create few files on a directory 4. Do 'ls' of that directory at the same time from all clients Actual results: Some 'ls' take several seconds to complete Expected results: All 'ls' should complete in less than a second
REVIEW: https://review.gluster.org/22774 (cluster/ec: honor contention notifications for partially acquired locks) posted (#1) for review on release-6 by Xavi Hernandez
REVIEW: https://review.gluster.org/22774 (cluster/ec: honor contention notifications for partially acquired locks) merged (#2) on release-6 by Amar Tumballi
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-6.3, please open a new bug report. glusterfs-6.3 has been announced on the Gluster mailinglists [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] https://lists.gluster.org/pipermail/gluster-users/2019-July/036790.html [2] https://www.gluster.org/pipermail/gluster-users/