[Bugs] [Bug 1167793] New: fsync on write-back doesn't wait for pending writes when an error is encountered
bugzilla at redhat.com
bugzilla at redhat.com
Tue Nov 25 12:37:51 UTC 2014
https://bugzilla.redhat.com/show_bug.cgi?id=1167793
Bug ID: 1167793
Summary: fsync on write-back doesn't wait for pending writes
when an error is encountered
Product: GlusterFS
Version: mainline
Component: write-behind
Assignee: bugs at gluster.org
Reporter: xhernandez at datalab.es
CC: bugs at gluster.org, gluster-bugs at redhat.com
Description of problem:
When multiple writes are sent in parallel and one of them fails, a following
fsync should wait until all other writes finish.
Version-Release number of selected component (if applicable): mainline
How reproducible:
Always on NetBSD, though it's not easily visible from an application unless a
side effect is checked.
Steps to Reproduce:
1. create a dispersed volume and limit a directory with quota
2. write a file larger than the assigned quota on that directory (it will fail)
3. immediately after failing (it should be done very fast, like in a script),
delete the file.
4. glusterfs will crash because file is closed after fsync and some of the
pending writes return ENOENT and this is unexpected in DHT (not sure why ENOENT
though)
Actual results:
Control is returned to the user before all pending write have finished.
Expected results:
The call should block the application until all pending writes are fully
processed.
Additional info:
--
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.
More information about the Bugs
mailing list