Bug 1708156

Summary: ec ignores lock contention notifications for partially acquired locks
Product: [Community] GlusterFS Reporter: Xavi Hernandez <jahernan>
Component: disperseAssignee: Xavi Hernandez <jahernan>
Status: CLOSED NEXTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 1714172 1717282 (view as bug list) Environment:
Last Closed: 2019-05-25 04:53:26 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1714172, 1717282    

Description Xavi Hernandez 2019-05-09 09:04:57 UTC
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

Additional info:

Comment 1 Worker Ant 2019-05-09 09:21:15 UTC
REVIEW: https://review.gluster.org/22690 (cluster/ec: honor contention notifications for partially acquired locks) posted (#1) for review on master by Xavi Hernandez

Comment 2 Worker Ant 2019-05-25 04:53:26 UTC
REVIEW: https://review.gluster.org/22690 (cluster/ec: honor contention notifications for partially acquired locks) merged (#5) on master by Pranith Kumar Karampuri