<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/rpc/xdr, branch v3.3.0qa28</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>cli, glusterd, nfs: "volume status|profile|top" for nfs servers</title>
<updated>2012-03-14T09:27:42+00:00</updated>
<author>
<name>Kaushal M</name>
<email>kaushal@redhat.com</email>
</author>
<published>2012-02-27T07:11:24+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=a476aba5b0368c3bc649db319ee748ae410144d9'/>
<id>a476aba5b0368c3bc649db319ee748ae410144d9</id>
<content type='text'>
Enables usage of volume monitoring operations "volume status", "volume top" and
"volume profile" for nfs servers. These operations can be performed on
nfs-servers  by passing "nfs" as an option in cli. The output is similar to the
normal brick outputs for these commands.

The new syntaxes for the changed commands are as below,
 #gluster volume profile &lt;VOLNAME&gt; {start|info|stop} [nfs]
 #gluster volume top &lt;VOLNAME&gt; {[open|read|write|opendir|readdir [nfs]]
               |[read-perf|write-perf [nfs|{bs &lt;size&gt; count &lt;count&gt;}]]}
               [brick &lt;brick&gt;] [list-cnt &lt;count&gt;]
 #gluster volume status [all | &lt;VOLNAME&gt; [nfs|&lt;BRICK&gt;]]
          [detail|clients|mem|inode|fd|callpool]

Change-Id: Ia6eb50c60aecacf9b413d3ea993f4cdd90ec0e07
BUG: 795267
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2820
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Enables usage of volume monitoring operations "volume status", "volume top" and
"volume profile" for nfs servers. These operations can be performed on
nfs-servers  by passing "nfs" as an option in cli. The output is similar to the
normal brick outputs for these commands.

The new syntaxes for the changed commands are as below,
 #gluster volume profile &lt;VOLNAME&gt; {start|info|stop} [nfs]
 #gluster volume top &lt;VOLNAME&gt; {[open|read|write|opendir|readdir [nfs]]
               |[read-perf|write-perf [nfs|{bs &lt;size&gt; count &lt;count&gt;}]]}
               [brick &lt;brick&gt;] [list-cnt &lt;count&gt;]
 #gluster volume status [all | &lt;VOLNAME&gt; [nfs|&lt;BRICK&gt;]]
          [detail|clients|mem|inode|fd|callpool]

Change-Id: Ia6eb50c60aecacf9b413d3ea993f4cdd90ec0e07
BUG: 795267
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2820
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>NLM - Network Lock Manger V4</title>
<updated>2012-02-20T15:26:51+00:00</updated>
<author>
<name>Krishna Srinivas</name>
<email>ksriniva@redhat.com</email>
</author>
<published>2012-02-20T09:04:39+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=ed2036979499cb272336187c06955aa5e484023d'/>
<id>ed2036979499cb272336187c06955aa5e484023d</id>
<content type='text'>
Change-Id: Ic31b8bb10a28408da2a623f4ecc0c60af01c64af
BUG: 795421
Signed-off-by: Krishna Srinivas &lt;ksriniva@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2711
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ic31b8bb10a28408da2a623f4ecc0c60af01c64af
BUG: 795421
Signed-off-by: Krishna Srinivas &lt;ksriniva@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2711
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>protocol/client,server: fcntl lock self healing.</title>
<updated>2012-02-20T12:45:31+00:00</updated>
<author>
<name>Mohammed Junaid</name>
<email>junaid@redhat.com</email>
</author>
<published>2012-02-08T12:36:39+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=f764516c2e526624ce0088963924ff2d88304553'/>
<id>f764516c2e526624ce0088963924ff2d88304553</id>
<content type='text'>
Currently(with out this patch), on a disconnect the server cleans up
the transport which inturn closes the fd's and releases the locks acquired on
those fd's by that client. On a reconnect, client just reopens the fd's but
doesn't reacquire the locks. The application that had previously acquired
the locks still is under the assumption that it is the owner of those locks
which might have been granted to other clients(if they request) by the server
leading to data corruption.

This patch allows the client to reacquire the fcntl locks (held on the fd's)
during client-server handshake.

* The server identifies the client via process-uuid-xl (which is a combination
  of uuid and client-protocol name, it is assumed to be unique) and lk-version
  number.

* The client maintains a list of process-uuid-xl, lk-version pair for each
  accepted connection. On a connect, the server traverses the list for a
  matching pair, if a matching pair is not found the the server returns
  lk-version with value 0, else it returns the lk-version it has in store.

* On a disconnect, the server and client enter grace period, and on the
  completion of the grace period, the client bumps up its lk-version number
  (which means, it will reacquire the locks the next time) and the server will
  distroy the connection. If reconnection happens within the grace period, the
  server will find the matching (process-uuid-xl, lk-version) pair in its list
  which guarantees that the fd's and there corresponding locks are still valid
  for this client.

Configurable options:
  To set grace-timeout, the following options are
    option server.grace-timeout value
    option client.grace-timeout value

  To enable or disable the lk-heal,
    option lk-heal [on|off]

gluster volume set command can be used to configurable options
Change-Id: Id677ef1087b300d649f278b8b2aa0d94eae85ed2
BUG: 795386
Signed-off-by: Mohammed Junaid &lt;junaid@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2766
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently(with out this patch), on a disconnect the server cleans up
the transport which inturn closes the fd's and releases the locks acquired on
those fd's by that client. On a reconnect, client just reopens the fd's but
doesn't reacquire the locks. The application that had previously acquired
the locks still is under the assumption that it is the owner of those locks
which might have been granted to other clients(if they request) by the server
leading to data corruption.

This patch allows the client to reacquire the fcntl locks (held on the fd's)
during client-server handshake.

* The server identifies the client via process-uuid-xl (which is a combination
  of uuid and client-protocol name, it is assumed to be unique) and lk-version
  number.

* The client maintains a list of process-uuid-xl, lk-version pair for each
  accepted connection. On a connect, the server traverses the list for a
  matching pair, if a matching pair is not found the the server returns
  lk-version with value 0, else it returns the lk-version it has in store.

* On a disconnect, the server and client enter grace period, and on the
  completion of the grace period, the client bumps up its lk-version number
  (which means, it will reacquire the locks the next time) and the server will
  distroy the connection. If reconnection happens within the grace period, the
  server will find the matching (process-uuid-xl, lk-version) pair in its list
  which guarantees that the fd's and there corresponding locks are still valid
  for this client.

Configurable options:
  To set grace-timeout, the following options are
    option server.grace-timeout value
    option client.grace-timeout value

  To enable or disable the lk-heal,
    option lk-heal [on|off]

gluster volume set command can be used to configurable options
Change-Id: Id677ef1087b300d649f278b8b2aa0d94eae85ed2
BUG: 795386
Signed-off-by: Mohammed Junaid &lt;junaid@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2766
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/dht: Rebalance will be a new glusterfs process</title>
<updated>2012-02-19T09:31:19+00:00</updated>
<author>
<name>shishirng</name>
<email>shishirng@gluster.com</email>
</author>
<published>2012-01-18T09:59:15+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=7ba1e1ed45cee56ef51b9c04df99c976546d5d04'/>
<id>7ba1e1ed45cee56ef51b9c04df99c976546d5d04</id>
<content type='text'>
rebalance will not use any maintainance clients. It is replaced by syncops,
with the volfile. Brickop (communication between glusterd&lt;-&gt;glusterfs process)
is used for status and stop commands.

Dept-first traversal of dir is maintained, but data is migrated as and when
encounterd.
fix-layout (dir)
do
        Complete migrate-data of dir
        fix-layout (subdir)
done

Rebalance state is saved in the vol file, for restart-ability.
A disconnect event and pidfile state determine the defrag-status

Signed-off-by: shishirng &lt;shishirng@gluster.com&gt;
Change-Id: Iec6c80c84bbb2142d840242c28db3d5f5be94d01
BUG: 763844
Reviewed-on: http://review.gluster.com/2540
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
rebalance will not use any maintainance clients. It is replaced by syncops,
with the volfile. Brickop (communication between glusterd&lt;-&gt;glusterfs process)
is used for status and stop commands.

Dept-first traversal of dir is maintained, but data is migrated as and when
encounterd.
fix-layout (dir)
do
        Complete migrate-data of dir
        fix-layout (subdir)
done

Rebalance state is saved in the vol file, for restart-ability.
A disconnect event and pidfile state determine the defrag-status

Signed-off-by: shishirng &lt;shishirng@gluster.com&gt;
Change-Id: Iec6c80c84bbb2142d840242c28db3d5f5be94d01
BUG: 763844
Reviewed-on: http://review.gluster.com/2540
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cli/glusterd: volume status modification</title>
<updated>2012-02-18T08:03:00+00:00</updated>
<author>
<name>Rajesh Amaravathi</name>
<email>rajesh@redhat.com</email>
</author>
<published>2012-01-31T11:34:37+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=df12073c4cc8340eb85b5d25c2da84fc21ec1f38'/>
<id>df12073c4cc8340eb85b5d25c2da84fc21ec1f38</id>
<content type='text'>
* Method of getting mount details of brick has been
  changed from direct reading of /etc/mtab to using
  libc's &lt;mntent.h&gt;, providing a fairly portable
  version independent of different linux distributions.
  It is only supported on Linux though.

* Wrong fs type (rootfs for /) in fedora-based
  distributions has been fixed.

* Allows options (detail, mem, fd, et al) to "all" volumes.

* Use of the fnmatch's GNU extension flag,
  FNM_LEADING_DIR is restricted to Linux hosts only.
  In case of non-Linux hosts, partial match functionality
  is absent.

Change-Id: I102ce808c192ef635c2536a2167101be0aa0fc50
BUG: 786367
Signed-off-by: Rajesh Amaravathi &lt;rajesh@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2705
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Method of getting mount details of brick has been
  changed from direct reading of /etc/mtab to using
  libc's &lt;mntent.h&gt;, providing a fairly portable
  version independent of different linux distributions.
  It is only supported on Linux though.

* Wrong fs type (rootfs for /) in fedora-based
  distributions has been fixed.

* Allows options (detail, mem, fd, et al) to "all" volumes.

* Use of the fnmatch's GNU extension flag,
  FNM_LEADING_DIR is restricted to Linux hosts only.
  In case of non-Linux hosts, partial match functionality
  is absent.

Change-Id: I102ce808c192ef635c2536a2167101be0aa0fc50
BUG: 786367
Signed-off-by: Rajesh Amaravathi &lt;rajesh@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2705
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>protocol: remove the 'path&lt;&gt;' from rename() and link()</title>
<updated>2012-02-17T06:49:15+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amar@gluster.com</email>
</author>
<published>2012-02-15T14:18:50+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=7fa06c4ce1a44bbd89d3798193f173c057533bb6'/>
<id>7fa06c4ce1a44bbd89d3798193f173c057533bb6</id>
<content type='text'>
missed it in the previous round of cleanup, path is completely
useless in resolve function.

Change-Id: I1aef0f5276afb77dfacfcc0c337ac80b4fcacc55
Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
BUG: 790298
Reviewed-on: http://review.gluster.com/2756
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
missed it in the previous round of cleanup, path is completely
useless in resolve function.

Change-Id: I1aef0f5276afb77dfacfcc0c337ac80b4fcacc55
Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
BUG: 790298
Reviewed-on: http://review.gluster.com/2756
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>protocol xdr: remove 'path&lt;&gt;'</title>
<updated>2012-02-14T12:34:06+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amar@gluster.com</email>
</author>
<published>2012-02-14T09:57:49+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=5f002b5418b557fd03ce59fbfd5d41272bdf491a'/>
<id>5f002b5418b557fd03ce59fbfd5d41272bdf491a</id>
<content type='text'>
client was sending 'path' on wire, which gets ignored on server
side, and also doesn't get freed up, which causes memory leak.

also with not having path on wire, the xdr size on wire most of the
time can remain constant, which helps in allocating RDMA buffers.

Change-Id: Ie0d36a670be60b02fd1e925c6f977b1a71def5cd
BUG: 790298
Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2744
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
client was sending 'path' on wire, which gets ignored on server
side, and also doesn't get freed up, which causes memory leak.

also with not having path on wire, the xdr size on wire most of the
time can remain constant, which helps in allocating RDMA buffers.

Change-Id: Ie0d36a670be60b02fd1e925c6f977b1a71def5cd
BUG: 790298
Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2744
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>core: add an extra flag to readv()/writev() API</title>
<updated>2012-02-14T09:09:02+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amar@gluster.com</email>
</author>
<published>2012-02-06T12:19:14+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=0e6df0100e13123fe38f28c5a090777e894d8f52'/>
<id>0e6df0100e13123fe38f28c5a090777e894d8f52</id>
<content type='text'>
needed to implement a proper handling of open flag alterations
using fcntl() on fd.

Change-Id: Ic280d5db6f1dc0418d5c439abb8db1d3ac21ced0
Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
BUG: 782265
Reviewed-on: http://review.gluster.com/2723
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
needed to implement a proper handling of open flag alterations
using fcntl() on fd.

Change-Id: Ic280d5db6f1dc0418d5c439abb8db1d3ac21ced0
Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
BUG: 782265
Reviewed-on: http://review.gluster.com/2723
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cli: Extend "volume status" with statedump info</title>
<updated>2012-01-27T12:20:04+00:00</updated>
<author>
<name>Kaushal M</name>
<email>kaushal@redhat.com</email>
</author>
<published>2012-01-01T10:29:28+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=623919a78a7faac30d1f0df5793681da2c449e32'/>
<id>623919a78a7faac30d1f0df5793681da2c449e32</id>
<content type='text'>
This patch enhances and extends the "volume status" command with information
obtained from the statedump of the bricks of volumes.

Adds new status types : clients, inode, fd, mem, callpool
The new syntax of "volume status" is,
 #gluster volume status [all|{&lt;volname&gt; [&lt;brickname&gt;]
                         [misc-details|clients|inode|fd|mem|callpool]}]

Change-Id: I8d019718465bbc3de727653a839de7238f45da5c
BUG: 765495
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2637
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch enhances and extends the "volume status" command with information
obtained from the statedump of the bricks of volumes.

Adds new status types : clients, inode, fd, mem, callpool
The new syntax of "volume status" is,
 #gluster volume status [all|{&lt;volname&gt; [&lt;brickname&gt;]
                         [misc-details|clients|inode|fd|mem|callpool]}]

Change-Id: I8d019718465bbc3de727653a839de7238f45da5c
BUG: 765495
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2637
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>protocol: allow extra data in all the 'fops' over wire</title>
<updated>2012-01-25T10:28:07+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amar@gluster.com</email>
</author>
<published>2011-12-23T04:30:28+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=e98752525706fd6d9989367eb84f1a7fc1b81fa4'/>
<id>e98752525706fd6d9989367eb84f1a7fc1b81fa4</id>
<content type='text'>
Change-Id: I3920c68b5b317fc4a4acfd26d64d900bf7bd59d1
BUG: 782265
Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2511
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I3920c68b5b317fc4a4acfd26d64d900bf7bd59d1
BUG: 782265
Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2511
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
