<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators, branch v2.0.7</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>cluster/afr: dir-write: Fix inode number handling.</title>
<updated>2009-09-29T02:36:12+00:00</updated>
<author>
<name>Vikas Gorur</name>
<email>vikas@gluster.com</email>
</author>
<published>2009-09-28T20:58:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=359c46118b756e1a5191ec6e902709258aad903b'/>
<id>359c46118b756e1a5191ec6e902709258aad903b</id>
<content type='text'>
create, mkdir, symlink, mknod: Prefer to return itransform'd inode number
from the first_up_child. If not, fall back on any other child that returned
succcess.

link, rename: Return the same inode number that
was passed as part of loc_t.

Also adds a new member to afr_local_t, local-&gt;first_up_child
which is initialized at the start of the transaction. This
fixes the race where a subvolume might go down during the transaction
and thus have the first_up_child change.

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

BUG: 285 ("first up child" can change during a transaction)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=285
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
create, mkdir, symlink, mknod: Prefer to return itransform'd inode number
from the first_up_child. If not, fall back on any other child that returned
succcess.

link, rename: Return the same inode number that
was passed as part of loc_t.

Also adds a new member to afr_local_t, local-&gt;first_up_child
which is initialized at the start of the transaction. This
fixes the race where a subvolume might go down during the transaction
and thus have the first_up_child change.

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

BUG: 285 ("first up child" can change during a transaction)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=285
</pre>
</div>
</content>
</entry>
<entry>
<title>write-behind: check for NULL file pointer in flush callback</title>
<updated>2009-09-24T14:13:41+00:00</updated>
<author>
<name>Anand Avati</name>
<email>avati@gluster.com</email>
</author>
<published>2009-09-24T08:31:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=1ed903641a297aaa16d212243eb17c8899d7969b'/>
<id>1ed903641a297aaa16d212243eb17c8899d7969b</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 260 (ls on booster VMP results in error: "File descriptor in bad state")
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=260
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 260 (ls on booster VMP results in error: "File descriptor in bad state")
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=260
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: Add NULL checks for file pointer.</title>
<updated>2009-09-24T12:19:37+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2009-09-24T06:04:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=bad9a77c646bc286feecba4d62e036504993175d'/>
<id>bad9a77c646bc286feecba4d62e036504993175d</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 260 (ls on booster VMP results in error: "File descriptor in bad state")
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=260
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

BUG: 260 (ls on booster VMP results in error: "File descriptor in bad state")
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=260
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: Add a NULL check for request-&gt;stub before checking request-&gt;stub-&gt;fop.</title>
<updated>2009-09-24T08:19:16+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2009-09-24T00:57:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=13b4437770fadf3089e37bdedd0fe689e79c87f9'/>
<id>13b4437770fadf3089e37bdedd0fe689e79c87f9</id>
<content type='text'>
- for non-write wind requests, the request structure outlives the stub.
    The call stub is destroyed when stack is wound but request is destroyed
    only when the reply has come.
    (for writes, both stub and request are destroyed when refcount becomes 0,
     which happens only when the write operation is stack unwound and a reply
     for the write operation has come from underlying translators, for non-write
     unwind requests the request is first destroyed before resuming the stub).

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

BUG: 280 (simple stripe, with write-behind set up, when dbench is run client crashes.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=280
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- for non-write wind requests, the request structure outlives the stub.
    The call stub is destroyed when stack is wound but request is destroyed
    only when the reply has come.
    (for writes, both stub and request are destroyed when refcount becomes 0,
     which happens only when the write operation is stack unwound and a reply
     for the write operation has come from underlying translators, for non-write
     unwind requests the request is first destroyed before resuming the stub).

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

BUG: 280 (simple stripe, with write-behind set up, when dbench is run client crashes.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=280
</pre>
</div>
</content>
</entry>
<entry>
<title>fuse: emit a flush from release if we didn't get an adjacent FLUSH message from the kernel</title>
<updated>2009-09-23T16:19:29+00:00</updated>
<author>
<name>Csaba Henk</name>
<email>csaba@gluster.com</email>
</author>
<published>2009-09-23T10:34:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=a484a0c47ef6468c1615aa78795880e71347f709'/>
<id>a484a0c47ef6468c1615aa78795880e71347f709</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@dev.gluster.com&gt;

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

BUG: 223 (flush not sent)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=223
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: store currently aggregated data size in wb_file</title>
<updated>2009-09-23T08:47:27+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2009-09-22T23:50:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=56f1b4ed39201355553f9ac4f49c16809d8351e5'/>
<id>56f1b4ed39201355553f9ac4f49c16809d8351e5</id>
<content type='text'>
- this helps us to not traverse the request list whenever we need currently
    aggregated data in the queue

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- this helps us to not traverse the request list whenever we need currently
    aggregated data in the queue

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: store the current window size in wb_file.</title>
<updated>2009-09-23T08:47:23+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2009-09-22T23:50:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=f72e01fb1d98c7df99b42ae1cbabec0fb0ecfcbd'/>
<id>f72e01fb1d98c7df99b42ae1cbabec0fb0ecfcbd</id>
<content type='text'>
- this would increase the performance since we don't have to traverse the
    request list every time we need the current window size.

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- this would increase the performance since we don't have to traverse the
    request list every time we need the current window size.

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: reduce usage of iov_length.</title>
<updated>2009-09-23T08:47:20+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2009-09-22T23:49:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=8b76f7c394e99f35463fc508984c6c532ddf4a8f'/>
<id>8b76f7c394e99f35463fc508984c6c532ddf4a8f</id>
<content type='text'>
- request structure now holds a member write_size which is initialised at the
    time of request creation and used later.

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- request structure now holds a member write_size which is initialised at the
    time of request creation and used later.

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: add option "enable-trickling-writes".</title>
<updated>2009-09-22T13:14:30+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2009-09-21T09:52:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=fb34f7fd81d3260d548ee0f6b5d656fdb1ec61f1'/>
<id>fb34f7fd81d3260d548ee0f6b5d656fdb1ec61f1</id>
<content type='text'>
- With this option enabled, writes are stack-wound even though not enough
    data is aggregated, provided there are no write-requests which are
    stack-wound but reply is yet to come. The reason behind this option
    is to make use of the network, which is relatively free (with no writes
    or replies in transit). However, with non-standard block-sizes of writes
    the performance can actually degrade. Hence making this configurable.

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- With this option enabled, writes are stack-wound even though not enough
    data is aggregated, provided there are no write-requests which are
    stack-wound but reply is yet to come. The reason behind this option
    is to make use of the network, which is relatively free (with no writes
    or replies in transit). However, with non-standard block-sizes of writes
    the performance can actually degrade. Hence making this configurable.

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</pre>
</div>
</content>
</entry>
<entry>
<title>performance/write-behind: reduce traversal of request list during wb_mark_winds.</title>
<updated>2009-09-22T13:14:26+00:00</updated>
<author>
<name>Raghavendra G</name>
<email>raghavendra@gluster.com</email>
</author>
<published>2009-09-21T09:51:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=f86858c3be2ad5b4f9031625e3678528d9f4c6c1'/>
<id>f86858c3be2ad5b4f9031625e3678528d9f4c6c1</id>
<content type='text'>
- move all the decision making code to __wb_can_wind.
  - don't continue traversing the request list, once we know any of the
    following conditions are true:
    * requests other than write are present in queue.
    * writes are happening at non-contiguous offsets.
    * there are no write requests, which are wound to server but not yet
      received the reply.
    * enough data is aggregated for writing.

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- move all the decision making code to __wb_can_wind.
  - don't continue traversing the request list, once we know any of the
    following conditions are true:
    * requests other than write are present in queue.
    * writes are happening at non-contiguous offsets.
    * there are no write requests, which are wound to server but not yet
      received the reply.
    * enough data is aggregated for writing.

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

BUG: 276 (write behind needs to be optimized.)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=276
</pre>
</div>
</content>
</entry>
</feed>
