<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/mgmt/glusterd/src/glusterd-brick-ops.c, branch v3.3.0qa29</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<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://git.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>glusterd: Fail volume 'modify' operations when rb is ongoing</title>
<updated>2012-02-14T18:22:09+00:00</updated>
<author>
<name>Krishnan Parthasarathi</name>
<email>kp@gluster.com</email>
</author>
<published>2012-02-13T11:03:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=38d73bdfc659dde4a2632da2da01c785b642c728'/>
<id>38d73bdfc659dde4a2632da2da01c785b642c728</id>
<content type='text'>
* add-brick, stop-volume, remove-brick are the operations that are explicitly
 'failed' when attempted while replace-brick is in progress.
* we attach the volume-id to the dst_brick volfile ensuring that the replace-brick
  operation holds 'claim' on it.

Change-Id: If60b2af566ca940b2add600b473c99730e06ab47
BUG: 765470
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2740
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@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>
* add-brick, stop-volume, remove-brick are the operations that are explicitly
 'failed' when attempted while replace-brick is in progress.
* we attach the volume-id to the dst_brick volfile ensuring that the replace-brick
  operation holds 'claim' on it.

Change-Id: If60b2af566ca940b2add600b473c99730e06ab47
BUG: 765470
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2740
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: Improved err msgs for add_brick</title>
<updated>2012-02-03T15:39:41+00:00</updated>
<author>
<name>Krishnan Parthasarathi</name>
<email>kp@gluster.com</email>
</author>
<published>2012-01-06T06:48:35+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=2313600f0749094f1246e663a0db15da3c2812db'/>
<id>2313600f0749094f1246e663a0db15da3c2812db</id>
<content type='text'>
Change-Id: I4b97d7e26b8c81ed52657467981be0c4adc291ae
BUG: 772145
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2589
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I4b97d7e26b8c81ed52657467981be0c4adc291ae
BUG: 772145
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2589
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: prevent adding bricks already in use</title>
<updated>2012-01-13T05:43:24+00:00</updated>
<author>
<name>Rajesh Amaravathi</name>
<email>rajesh@redhat.com</email>
</author>
<published>2012-01-06T10:32:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=cf944c8ad5da87bce15b08d0bbb2ecd62e553d86'/>
<id>cf944c8ad5da87bce15b08d0bbb2ecd62e553d86</id>
<content type='text'>
The add-brick command now checks if the brick provided for
add-brick is used in any volumes, even if the volume was
never started by looping through the brick lists of all
volumes.

Change-Id: I15035d41d91386448a3e3d4063d909b880288681
BUG: 771831
Signed-off-by: Rajesh Amaravathi &lt;rajesh@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2607
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The add-brick command now checks if the brick provided for
add-brick is used in any volumes, even if the volume was
never started by looping through the brick lists of all
volumes.

Change-Id: I15035d41d91386448a3e3d4063d909b880288681
BUG: 771831
Signed-off-by: Rajesh Amaravathi &lt;rajesh@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2607
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: Fixed add-brick error message.</title>
<updated>2012-01-05T08:52:19+00:00</updated>
<author>
<name>Krishnan Parthasarathi</name>
<email>kp@gluster.com</email>
</author>
<published>2012-01-05T05:51:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=ea275f8cfe8abf5877f67b21afb2c1e6e08f06b7'/>
<id>ea275f8cfe8abf5877f67b21afb2c1e6e08f06b7</id>
<content type='text'>
Change-Id: I9260d5a0203ae2990d37b30bcc7c94c81c1e168e
BUG: 770678
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2581
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I9260d5a0203ae2990d37b30bcc7c94c81c1e168e
BUG: 770678
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2581
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: Added checks for remove-brick handler.</title>
<updated>2012-01-04T19:32:01+00:00</updated>
<author>
<name>Krishnan Parthasarathi</name>
<email>kp@gluster.com</email>
</author>
<published>2012-01-04T13:35:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=0a4ac033095c0675c90abc353736f388873291c0'/>
<id>0a4ac033095c0675c90abc353736f388873291c0</id>
<content type='text'>
Removing bricks in a plain stripe-replicate is failed
if replica count is not reduced explicitly.

Change-Id: I6d0de4862595744d1d1998b9a287c34c53d7fe5f
BUG: 770561
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2577
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>
Removing bricks in a plain stripe-replicate is failed
if replica count is not reduced explicitly.

Change-Id: I6d0de4862595744d1d1998b9a287c34c53d7fe5f
BUG: 770561
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2577
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>glusterd: Fixed add-brick handler algorithm.</title>
<updated>2012-01-03T04:49:58+00:00</updated>
<author>
<name>Krishnan Parthasarathi</name>
<email>kp@gluster.com</email>
</author>
<published>2012-01-02T13:10:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=29b9b0c72809456b1ba334a40adc1ed9929eca91'/>
<id>29b9b0c72809456b1ba334a40adc1ed9929eca91</id>
<content type='text'>
In the fix for 765774, setting the op dictionary with modified stripe
and replica count was (accidentally) removed affecting the correctness.
The stage and op functions of add-brick rely on the fact that stripe/replica
count are zero if there is no change in them during the add-brick operation.

Change-Id: I55a23878e618b355009ffd0fce8c4904dbb70691
BUG: 770914
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2548
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>
In the fix for 765774, setting the op dictionary with modified stripe
and replica count was (accidentally) removed affecting the correctness.
The stage and op functions of add-brick rely on the fact that stripe/replica
count are zero if there is no change in them during the add-brick operation.

Change-Id: I55a23878e618b355009ffd0fce8c4904dbb70691
BUG: 770914
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/2548
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>glusterd: Fixed spurious checks in add_brick.</title>
<updated>2011-12-20T05:42:30+00:00</updated>
<author>
<name>Krishnan Parthasarathi</name>
<email>kp@gluster.com</email>
</author>
<published>2011-12-19T07:12:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=0074f208448d131a25721d8cd4ed408c5c57c72a'/>
<id>0074f208448d131a25721d8cd4ed408c5c57c72a</id>
<content type='text'>
Previous algo,
 - didn't allow volume type change from plain distribute
   to distribute-[stripe][-][replicate].
 - performed 'add-brick' on temporary volinfo without correct
   initialisations. This was superflous.

Change-Id: If5d5d78e59bd04685df9c27974f715df5f0b43f3
BUG: 765774
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/804
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previous algo,
 - didn't allow volume type change from plain distribute
   to distribute-[stripe][-][replicate].
 - performed 'add-brick' on temporary volinfo without correct
   initialisations. This was superflous.

Change-Id: If5d5d78e59bd04685df9c27974f715df5f0b43f3
BUG: 765774
Signed-off-by: Krishnan Parthasarathi &lt;kp@gluster.com&gt;
Reviewed-on: http://review.gluster.com/804
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>XDR: cli-glusterd xdr consolidation</title>
<updated>2011-11-16T09:42:29+00:00</updated>
<author>
<name>shishir gowda</name>
<email>shishirng@gluster.com</email>
</author>
<published>2011-11-02T13:08:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=7a97478dd1a343fcc5d9d4eab963882191a3de69'/>
<id>7a97478dd1a343fcc5d9d4eab963882191a3de69</id>
<content type='text'>
By using only 1 xdr struct for request and 1 xdr struct for response,
we will be able scale better and also be able to parse the o/p better

For request use-
        gf1_cli_req - contains dict
For response use-
        gf1_cli_rsp - conains op_ret, op_errno, op_errstr, dict

Change-Id: I94b034e1d8fa82dfd0cf96e7602d4039bc43fef3
BUG: 3720
Reviewed-on: http://review.gluster.com/662
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
By using only 1 xdr struct for request and 1 xdr struct for response,
we will be able scale better and also be able to parse the o/p better

For request use-
        gf1_cli_req - contains dict
For response use-
        gf1_cli_rsp - conains op_ret, op_errno, op_errstr, dict

Change-Id: I94b034e1d8fa82dfd0cf96e7602d4039bc43fef3
BUG: 3720
Reviewed-on: http://review.gluster.com/662
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>changing of the volume types after volume is created.</title>
<updated>2011-10-28T12:42:08+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amar@gluster.com</email>
</author>
<published>2011-10-11T11:03:24+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=c770722983f73aa838b5985755999050c746550a'/>
<id>c770722983f73aa838b5985755999050c746550a</id>
<content type='text'>
with this patch, one can do all the below operations:

on a simple distribute volume 'test' with bricks A,B, add bricks C and D:

 bash# gluster volume add-brick test replica 2 C D

now the volume 'test' becomes distribute-replicate, with pairs A-C, B-D.
same holds good for stripe.

and now, one can change the replica count 2 on volume 'test' to 4 like below:

 bash# gluster volume add-brick test replica 4 E F G H

now, volume has 'replica' count 4, with pairs being 'A-C-E-F' and 'B-D-G-H'.

after this, if user wants to reduce the replica count, he can do

 bash# gluster volume remove-brick test replica 3 C H # (one from each pair)

This should work to reduce the replica count

Change-Id: I4f109141a9ba7be4a92a5f5810a4163baeb92973
BUG: 3305
Reviewed-on: http://review.gluster.com/158
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>
with this patch, one can do all the below operations:

on a simple distribute volume 'test' with bricks A,B, add bricks C and D:

 bash# gluster volume add-brick test replica 2 C D

now the volume 'test' becomes distribute-replicate, with pairs A-C, B-D.
same holds good for stripe.

and now, one can change the replica count 2 on volume 'test' to 4 like below:

 bash# gluster volume add-brick test replica 4 E F G H

now, volume has 'replica' count 4, with pairs being 'A-C-E-F' and 'B-D-G-H'.

after this, if user wants to reduce the replica count, he can do

 bash# gluster volume remove-brick test replica 3 C H # (one from each pair)

This should work to reduce the replica count

Change-Id: I4f109141a9ba7be4a92a5f5810a4163baeb92973
BUG: 3305
Reviewed-on: http://review.gluster.com/158
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
