Red Hat Bugzilla – Full Text Bug Listing
|Summary:||write-behind: implement causal ordering of requests for better VM performance|
|Product:||[Community] GlusterFS||Reporter:||Anand Avati <aavati>|
|Component:||write-behind||Assignee:||Anand Avati <aavati>|
|Status:||CLOSED CURRENTRELEASE||QA Contact:|
|Version:||mainline||CC:||amarts, chrisw, gluster-bugs, jdarcy, rfortier|
|Fixed In Version:||glusterfs-3.4.0||Doc Type:||Bug Fix|
|Doc Text:||Story Points:||---|
|Last Closed:||2013-07-24 13:38:18 EDT||Type:||Bug|
|oVirt Team:||---||RHEL 7.3 requirements from Atomic Host:|
|Bug Depends On:|
|Bug Blocks:||850503, 850666, 852367, 856156, 895528|
Description Anand Avati 2012-09-15 17:48:49 EDT
The current ordering guarantees of write-behind is too strict and causes significant drop in performance for a VM workload.
Comment 1 Jeff Darcy 2012-09-17 08:54:11 EDT
If I'm reading the current patch correctly, it's now "less strict" in the sense that ordering between non-overlapping writes is not maintained even if the two are completely separate in time. Is that correct? Is it possible for a user to choose the stricter behavior via an option, or have the code structures changed so much that that would be infeasible? Also, how big is the performance difference, and how is it being measured?
Comment 2 Anand Avati 2012-09-27 15:42:03 EDT
Performance difference is very significant. Ben has latest info on the results. I will explore if it is easy to provide an option to strictly preserve ordering. It might come out as an additional patch.
Comment 3 Anand Avati 2012-09-27 16:15:36 EDT
http://review.gluster.org/#change,3947,patchset=9 implements strict write ordering option for the paranoid. Note that the previous version of write-behind was _not_ maintaining strict write ordering (for adjacent writes). This option is "stricter" than the previous write-behind for writes, but more relaxed w.r.t reads. It only holds back those reads which have overlapping pending writes (which is why the option is called "strict-write-ordering" and not "strict-ordering").
Comment 4 shishir gowda 2012-10-09 22:59:21 EDT
*** Bug 845213 has been marked as a duplicate of this bug. ***
Comment 5 Vijay Bellur 2012-10-13 13:42:09 EDT
CHANGE: http://review.gluster.org/4079 (write-behind: use uint64_t for overlap comparison) merged in master by Anand Avati (firstname.lastname@example.org)
Comment 6 Vijay Bellur 2013-02-20 14:03:33 EST
CHANGE: http://review.gluster.org/4551 (performance/write-behind: guarantee non-overlapping concurrent writes) merged in master by Anand Avati (email@example.com)