<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs-afrv1.git/xlators/performance/write-behind/src, branch release-3.0</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/'/>
<entry>
<title>performance/write-behind: initialize lock in wb-file before wb-file is set in fd-ctx.</title>
<updated>2011-05-08T06:03:47+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2011-05-01T23:40:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=ee744e0908dca3c954f6b6a922dd48f6f6e8cbc6'/>
<id>ee744e0908dca3c954f6b6a922dd48f6f6e8cbc6</id>
<content type='text'>
- Consider a combination of fuse-&gt;quick-read-&gt;read-ahead-&gt;wb-&gt;client.
    quick-read can do open-behind (open is returned as success even
    before it is issued to backend) and hence the fd can already be
    in the list of open fds of the inode. A flush call on some other
    fd opened on the same inode, will result in ra_flush issuing flush
    calls to all the fds opened on the same inode. This can result in
    wb_flush trying to hold a lock on non-initialized lock there by causing
    memory corruption.

Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Vijay Bellur &lt;vijay@gluster.com&gt;

BUG: 2679 (Crash in GlusterFS 3.0.5 in GSP)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2679
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Consider a combination of fuse-&gt;quick-read-&gt;read-ahead-&gt;wb-&gt;client.
    quick-read can do open-behind (open is returned as success even
    before it is issued to backend) and hence the fd can already be
    in the list of open fds of the inode. A flush call on some other
    fd opened on the same inode, will result in ra_flush issuing flush
    calls to all the fds opened on the same inode. This can result in
    wb_flush trying to hold a lock on non-initialized lock there by causing
    memory corruption.

Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Vijay Bellur &lt;vijay@gluster.com&gt;

BUG: 2679 (Crash in GlusterFS 3.0.5 in GSP)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=2679
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: backport write-behind from 3.1</title>
<updated>2011-01-27T20:18:17+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2011-01-21T07:47:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=bf5c0efdec755297a976a6253665431d700d0737'/>
<id>bf5c0efdec755297a976a6253665431d700d0737</id>
<content type='text'>
Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 934 (md5sum mismatch when files are transferred using vsftpd)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=934
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 934 (md5sum mismatch when files are transferred using vsftpd)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=934
</pre>
</div>
</content>
</entry>
<entry>
<title>write-behind: fixes in flush</title>
<updated>2010-07-02T16:39:23+00:00</updated>
<author>
<name>Anand Avati</name>
<email>avati@gluster.com</email>
</author>
<published>2010-07-02T10:54:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=2e35a3eef66290e166344858ec548942428a478f'/>
<id>2e35a3eef66290e166344858ec548942428a478f</id>
<content type='text'>
old code was resulting in duplicate flushes and spurious dangling flush frames

Signed-off-by: Anand V. Avati &lt;avati@blackhole.gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 1042 (Use correct flock structures in lk fops)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1042
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
old code was resulting in duplicate flushes and spurious dangling flush frames

Signed-off-by: Anand V. Avati &lt;avati@blackhole.gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 1042 (Use correct flock structures in lk fops)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1042
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "performance/write-behind: explicitly enforce ordering of overlapping writes."</title>
<updated>2010-05-28T10:41:13+00:00</updated>
<author>
<name>Anand V. Avati</name>
<email>avati@dev.gluster.com</email>
</author>
<published>2010-05-28T10:41:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=af5ac6eb2ebace38e301c09d72312d3d432ec8d4'/>
<id>af5ac6eb2ebace38e301c09d72312d3d432ec8d4</id>
<content type='text'>
This reverts commit 6d9b11dba63d86c48450aa956281114962289ef5.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 6d9b11dba63d86c48450aa956281114962289ef5.
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: explicitly enforce ordering of overlapping writes.</title>
<updated>2010-05-26T11:49:00+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2010-05-26T06:08:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=6d9b11dba63d86c48450aa956281114962289ef5'/>
<id>6d9b11dba63d86c48450aa956281114962289ef5</id>
<content type='text'>
- If there are non-contiguous offsets (offsets which do not start where
    previous write ended), wait for completion of previous writes to server,
    before sending new ones.
  - Send flush call to server only when all writes are completed.
  - If a file is opened with O_APPEND, at any point of time a maximum only one
    write call to server should be in transit. This is to avoid reordering of
    writes in the presence of afr which can result in data corruption.
    See bug #934 for more details.

Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 934 (md5sum mismatch when files are transferred using vsftpd)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=934
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- If there are non-contiguous offsets (offsets which do not start where
    previous write ended), wait for completion of previous writes to server,
    before sending new ones.
  - Send flush call to server only when all writes are completed.
  - If a file is opened with O_APPEND, at any point of time a maximum only one
    write call to server should be in transit. This is to avoid reordering of
    writes in the presence of afr which can result in data corruption.
    See bug #934 for more details.

Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 934 (md5sum mismatch when files are transferred using vsftpd)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=934
</pre>
</div>
</content>
</entry>
<entry>
<title>write-behind: update default values for better small file performance</title>
<updated>2010-05-13T19:12:35+00:00</updated>
<author>
<name>Anand Avati</name>
<email>avati@gluster.com</email>
</author>
<published>2010-05-13T12:43:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=16f0d3b9da3a0b21204cd8fc7ad2139a6f58ee90'/>
<id>16f0d3b9da3a0b21204cd8fc7ad2139a6f58ee90</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@blackhole.gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 898 (small file performance enhancements)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=898
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@blackhole.gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 898 (small file performance enhancements)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=898
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: Resume all the consecutive non-write operations in the request queue in a single go.</title>
<updated>2010-03-29T11:29:57+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2010-03-26T02:38:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=a0dfbcdad536e42ae08a59b59de3aca3d11d95e8'/>
<id>a0dfbcdad536e42ae08a59b59de3aca3d11d95e8</id>
<content type='text'>
Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 740 (read-ahead does not work to its full potential when loaded on top of write-behind)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=740
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 740 (read-ahead does not work to its full potential when loaded on top of write-behind)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=740
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: fix data corruption while aggregating the adjacent contiguous iobufs into a single iobuf</title>
<updated>2010-02-23T07:39:47+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2010-02-22T23:59:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=71d5afaa15de1d1066799e2de54fe88182453ff1'/>
<id>71d5afaa15de1d1066799e2de54fe88182453ff1</id>
<content type='text'>
- while aggregating, we should make sure that the destination has enough
   memory. __wb_collapse_write_bufs assumed that destination vector's iov_base
   was aligned to the start of an iobuf and hence memory of page_size is
   available for aggregation. This assumption is not always true, like in the
   configuration consisting afr-&gt;write-&gt;io-cache (afr is on top). Refer to the
   bug url for more details.

Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 542 (write-behind crashes)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=542
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- while aggregating, we should make sure that the destination has enough
   memory. __wb_collapse_write_bufs assumed that destination vector's iov_base
   was aligned to the start of an iobuf and hence memory of page_size is
   available for aggregation. This assumption is not always true, like in the
   configuration consisting afr-&gt;write-&gt;io-cache (afr is on top). Refer to the
   bug url for more details.

Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 542 (write-behind crashes)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=542
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: refactor __wb_collapse_write_bufs</title>
<updated>2010-02-23T07:39:40+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2010-02-22T23:58:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=4b3ef7dfaa1615a1bb7659c8ddfeba3fe7b8e7df'/>
<id>4b3ef7dfaa1615a1bb7659c8ddfeba3fe7b8e7df</id>
<content type='text'>
- refactor done to remove duplicated code.

Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 542 (write-behind crashes)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=542
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- refactor done to remove duplicated code.

Signed-off-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 542 (write-behind crashes)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=542
</pre>
</div>
</content>
</entry>
<entry>
<title>write-behind: fix 'option enable-trickling-writes'</title>
<updated>2010-01-26T11:47:32+00:00</updated>
<author>
<name>Anand Avati</name>
<email>avati@gluster.com</email>
</author>
<published>2010-01-23T14:49:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs-afrv1.git/commit/?id=936eac4cec6cf57ab22688cb8f3222d385818c97'/>
<id>936eac4cec6cf57ab22688cb8f3222d385818c97</id>
<content type='text'>
fix logic in __wb_mark_winds to properly initialize incomplete_writes
and conditionally check based on enable_trickling_writes flag

Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 547 (write-behind enable-trickling-writes working?)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=547
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fix logic in __wb_mark_winds to properly initialize incomplete_writes
and conditionally check based on enable_trickling_writes flag

Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 547 (write-behind enable-trickling-writes working?)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=547
</pre>
</div>
</content>
</entry>
</feed>
