| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also populated the error message in case of snapshot create, list, info and delete failure.
When snapshot list, info or delete is issued, if the entered snapname/volname does not exist then populate error string along with logging.
Change-Id: I632d25110bc63ff0e4ac98b27e2f410f7ccbb990
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/7203
Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com>
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This Patch includes cli change and few backend changes.
Syntax :
gluster snapshot restore <snap-name>
** Also removed unwanted snapshot remove parsing code.
Change-Id: Ie32590ccd4080da9409fd16c543866c14fae28f5
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/7191
Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com>
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Created framework to process single volume lock, single snap lock,
multiple volume locks, multiple snap locks, and multiple snap and
volume locks requests.
Change-Id: I3f87bdec0bf142d6a1fd3f9d9f5012cc44eaf4bd
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
Reviewed-on: http://review.gluster.org/7189
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With the snap driven approach, While creating the snapshot, We have to
mention the snap-name first and then the volumes to be associated with
that. Corresponding changes has been made in glusterd.
While deleting the snapshot, we have to mention only the snapname.
Corresponding changes has been made in glusterd.
CLI changes for the same can be found here:
http://review.gluster.org/#/c/6947/
Change-Id: I8bd8f471da5b728165da5f331faad3dde3486823
Signed-off-by: Vijaikumar M <vmallika@redhat.com>
Reviewed-on: http://review.gluster.org/7123
Reviewed-by: Avra Sengupta <asengupt@redhat.com>
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Syntax:
gluster snapshot delete <snapname>
Change-Id: I5de7b9a79eeba12e4f0b8abfbe96a2db738f25c0
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/7144
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
syntax:
gluster snapshot list [volname]
This will list all the snapshots (or) snapshots of a particular volume.
Change-Id: If879e06fe13caf2236f48df345857f833ae83c5b
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/7143
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
snapshot info [(snapname | volume <volname>)].
Snapshot info will list all the basic information.
Syntax :
** gluster snapshot info **
This will list all the snap object along with that
it also prints the snaps volume name, UUID and
status.
** gluster snapshot info <snap-name> **
This will list only the mentioned snap object and
also snap volume information along with that
** gluster snapshot info volume <volname> **
This will list all the snaps present in the
mentioned volume.
Change-Id: I1e92774cb08eaebbfe141b9b47d1a887d76916a4
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/6996
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Syntax:
gluster snapshot create <snap-name> <vol-names>
[description <description>] [force].
New change:
With the snap driven approach, While creating the snapshot, We have
to mention the snap-name first and then the volumes to be associated
with that. Corresponding changes has been made in CLI,and all the
hyphenated options are replaced by keywords.
Previous Syntax :
snapshot create <volnames> [-n <snap-name/cg-name>] [-d <description>]
Change-Id: I9b4caf9629fdc3195b682190d999db2ecd9ce3e1
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/6947
Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com>
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
|
| |
Change-Id: I6315d5b96ac72f6520037d4e96e29e5862aec346
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/6867
Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com>
Reviewed-by: Avra Sengupta <asengupt@redhat.com>
Reviewed-by: Rajesh Joseph <rjoseph@redhat.com>
Tested-by: Rajesh Joseph <rjoseph@redhat.com>
|
|\ |
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ife2395a92997168bb147a7db4bba346d3adc916b
BUG: 1048126
Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently, on deleting snapshot , there is no warning message displayed
to the user.
A Warning must be displayed before the snapshot is deleted as follows:
Deleting snap will erase all information about the snap. Do you want to
continue? (y/n)
Change-Id: I60f4f346da36b6564576c7482f5989a17d4bb5e1
BUG: 1048216
Signed-off-by: Vijaikumar M <vmallika@redhat.com>
|
|\ \ |
|
| |/
| |
| |
| |
| | |
Change-Id: Id98d6e2d0436621486c311889f128077558e59f8
Signed-off-by: Sachin Pandit <spandit@redhat.com>
|
|\ \
| | |
| | |
| | | |
into development
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I34cf0f2ee42074bb40edda875e0b290069d856ae
Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Implemented gluster snapshot restore feature. The restore is done
by replacing the origin volume with the snap volume.
TODO: After the restore the snapshot volume should be deleted. As of
now the deletion work is pending.
Change-Id: Ib137fb6bb84a74030607ffa47f89cd705dc7e1ff
Signed-off-by: Rajesh Joseph <rjoseph@redhat.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
snap-max-hard-limit.
This patch also prohibits configuration of snap-max-hard-limit
and snap-max-soft-limit for snap volumes. Also displaying the
snapshot configs by reading data only from local node, as all
config data will be in sync across the cluster.
Change-Id: I635b925c02ed5b108cd10c7193b154ad82d5afad
BUG: 1043792
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|
|\
| |
| |
| | |
commands" into development
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently "gluster help" only list the volume and peer command family.
With this fix it will also list the usage for snapshot commands.
Change-Id: I75601496e4f027250c2381eff94e4283bb98299a
BUG: 1043472
Signed-off-by: Vijaikumar M <vmallika@redhat.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Note: Manually adding this patch again as this patch got missed in
git reset option done on remote development branch
Change-Id: I9e81c5ec003c1e1722d0fcb27dd87c365ee43ff4
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
Signed-off-by: Rajesh Joseph <rjoseph@redhat.com>
|
|/
|
|
|
|
|
|
|
|
|
|
|
| |
CG ID was not getting initiated during snapshot create,
hence there was problem in listing the CG ID and CG Name.
Note: Manually adding this patch again as this patch got missed in
git reset option done on remote development branch
Change-Id: I81951b42292912c98bab5964fc732b630ff66d14
BUG: 1040435
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Signed-off-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
| |
Change-Id: Icdb66c89acdd043d0d6368c48ce2e01b1a40966f
Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
|
|
|
|
|
|
|
|
|
| |
This patch fixes the below mentioned issue.
Snapshot list : Listing number of snaps available.
Display proper message if snapshot not present.
Change-Id: Iabfc47430a9c89fb5114e33e9feb7ef21973fc6a
Signed-off-by: Sachin Pandit <spandit@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Minor changes to the type of few varaibles was required
as comparison between "unsigned int" and "int"
in "snap create parse" was leading to incorrect result.
The default snapshot name should be time stamp,
instead of that "snapshot" was getting assigned
as a snapshot name. This patch also fixes the
default snapshot name problem.
Change-Id: I5b48444059bc400717b35647edec08a444bcfc48
Signed-off-by: Sachin Pandit <spandit@redhat.com>
|
|
|
|
|
| |
Change-Id: I2a0b7e244256f1df82beb3e4815d6cacfee50603
Signed-off-by: Sachin Pandit <spandit@redhat.com>
|
|
|
|
|
|
|
|
|
| |
If user tries to list the snap details of volumes
which does not exist, then corresponding error
message is displayed.
Change-Id: I205738be3dc632ccb074b639a2088cdd44aa35a7
Signed-off-by: Sachin Pandit <spandit@redhat.com>
|
|
|
|
|
| |
Change-Id: I6fd89a98c4a111bb6cd3e4d3c2b3d6f783661c27
Signed-off-by: shishir gowda <sgowda@redhat.com>
|
|
|
|
|
|
|
| |
Also fixes snapshot config output
Change-Id: Ia50d94492009cf73dbb99ba20117b9fa4c41048a
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
GL-31: Ability to restore snapshot
Implemented snapshot restore for thin logical volume. As of now snapshot
restore for CG is not tested. Testing for snapshot restore of a volume
is done by changing the snapshot create process to create a thick snapshot.
This is done because --merge option to restore thin volume is not working in
the latest kernel.
Change-Id: Ia3ded7e6c4da5957a74e269a25ba3200e6fb2d8b
Signed-off-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
|
|
|
|
| |
* Also send the proper error back to cli incase of any failure
* Before taking the snap check whether a snap with the requested name
already exists.
Change-Id: I0830b31b1f095dd1d3d968c4f8b3cf46dc32d259
Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
|
|
|
|
|
| |
Change-Id: I16b17ca60b5f9b34b7d238d8a3424a3b7a1dc435
Signed-off-by: shishir gowda <sgowda@redhat.com>
|
|
|
|
|
|
|
|
| |
Also refactored code in glusterd for create command
Additionally, removed brick-op func from mgmt_iniate_all_phases
Change-Id: Iddcc332009c5716adee7f2b04c93b352fb983446
Signed-off-by: shishir gowda <sgowda@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change in Naming convention:
"snap_details", "snap_count" and so on
is replaced by "snap-details", "snap-count" so on.
Total snapcount introduced.
Separate check is made for repeated Volume Name
Ex : "gluster snapshot list vol1 vol2 vol1 vol2"
is considered as "gluster snapshot list vol1 vol2"
*This is still a work in progress*
*have to test CG list once CG Store is ready*
Change-Id: I45e2904eb8bdbf78de8665f20ba9605c38320307
Signed-off-by: Sachin Pandit <spandit@redhat.com>
|
|
|
|
|
| |
Change-Id: Iafbd0ec95de0c41455fb79953fb4bb07721334a5
Signed-off-by: shishir gowda <sgowda@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
$gluster snapshot list
*prints snaps of all volume*
$gluster snapshot list -d
*prints snaps of all volume with details*
$gluster snapshot list vol1
*prints snaps of volume "vol1"*
$gluster snapshot list vol1 -d
*prints snaps of volume "vol1" with details*
$gluster snapshot list vol1 vol2
*prints snaps of volume "vol1" & "vol2"
$gluster snapshot list vol1 vol2 -d
*prints snaps of volume "vol1" & "vol2" with details*
$gluster snapshot list -c cgname
*prints snaps of all volume present in the group "cgname"*
$gluster snapshot list -c cgname -d
*prints snaps of all volume present in the group "cgname" with details*
** As of now you wont be able to see any output as actual snap create is not integrated **
Change-Id: I60eeafc715a51f1c564a270bb4124368038012b1
Signed-off-by: Sachin Pandit <spandit@redhat.com>
|
|
|
|
|
|
|
| |
Also linking snap create command to mgmt_v3
Change-Id: If2ed29be072e10d0b0bd271d53e48eeaa6501ed7
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
$ gluster snapshot help
snapshot help - display help for snapshot commands
snapshot create <volnames> [-n <snap-name/cg-name>] [-d <description>] - Snapshot Create.
$ gluster snapshot create vol1
snapshot create: ???: snap created successfully
$ gluster snapshot create vol1 vol2
snapshot create: ???: consistency group created successfully
(The ??? will be replaced by the glusterd snap create command with the
generated snap-name or cg-name)
$ gluster snapshot create vol1 vol2 -n CG1
snapshot create: CG1: consistency group created successfully
$ gluster snapshot create vol1 -n snap1 -d Description
snapshot create: snap1: snap created successfully
$ gluster snapshot create vol1 -n snap1 -d "Description can have -d within quotes"
snapshot create: snap1: snap created successfully
$ gluster snapshot create vol1 -n snap1 -d Description cant have -d without quotes
snapshot create: failed: Options(-n/-d) are not valid descriptions
Usage: snapshot create <volnames> [-n <snap-name/cg-name>] [-d <description>]
$ gluster snapshot create vol1 -n "Multi word snap name" -d Description
snapshot create: failed: Invalid snap name
Usage: snapshot create <volnames> [-n <snap-name/cg-name>] [-d <description>]
$ gluster snapshot create vol1 -d Description -n "-d"
snapshot create: failed: Options(-n/-d) are not valid snap names
Usage: snapshot create <volnames> [-n <snap-name/cg-name>] [-d <description>]
$ gluster snapshot create vol1 -d -n snap1
snapshot create: failed: No description provided
Usage: snapshot create <volnames> [-n <snap-name/cg-name>] [-d <description>]
Change-Id: I74b5a8406d72282fbb7ba7d07e0c7fe395148d38
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Current BD xlator (block backend) has a few limitations such as
* Creation of directories not supported
* Supports only single brick
* Does not use extended attributes (and client gfid) like posix xlator
* Creation of special files (symbolic links, device nodes etc) not
supported
Basic limitation of not allowing directory creation is blocking
oVirt/VDSM to consume BD xlator as part of Gluster domain since VDSM
creates multi-level directories when GlusterFS is used as storage
backend for storing VM images.
To overcome these limitations a new BD xlator with following
improvements is suggested.
* New hybrid BD xlator that handles both regular files and block device
files
* The volume will have both POSIX and BD bricks. Regular files are
created on POSIX bricks, block devices are created on the BD brick (VG)
* BD xlator leverages exiting POSIX xlator for most POSIX calls and
hence sits above the POSIX xlator
* Block device file is differentiated from regular file by an extended
attribute
* The xattr 'user.glusterfs.bd' (BD_XATTR) plays a role in mapping a
posix file to Logical Volume (LV).
* When a client sends a request to set BD_XATTR on a posix file, a new
LV is created and mapped to posix file. So every block device will
have a representative file in POSIX brick with 'user.glusterfs.bd'
(BD_XATTR) set.
* Here after all operations on this file results in LV related
operations.
For example opening a file that has BD_XATTR set results in opening
the LV block device, reading results in reading the corresponding LV
block device.
When BD xlator gets request to set BD_XATTR via setxattr call, it
creates a LV and information about this LV is placed in the xattr of the
posix file. xattr "user.glusterfs.bd" used to identify that posix file
is mapped to BD.
Usage:
Server side:
[root@host1 ~]# gluster volume create bdvol host1:/storage/vg1_info?vg1 host2:/storage/vg2_info?vg2
It creates a distributed gluster volume 'bdvol' with Volume Group vg1
using posix brick /storage/vg1_info in host1 and Volume Group vg2 using
/storage/vg2_info in host2.
[root@host1 ~]# gluster volume start bdvol
Client side:
[root@node ~]# mount -t glusterfs host1:/bdvol /media
[root@node ~]# touch /media/posix
It creates regular posix file 'posix' in either host1:/vg1 or host2:/vg2 brick
[root@node ~]# mkdir /media/image
[root@node ~]# touch /media/image/lv1
It also creates regular posix file 'lv1' in either host1:/vg1 or
host2:/vg2 brick
[root@node ~]# setfattr -n "user.glusterfs.bd" -v "lv" /media/image/lv1
[root@node ~]#
Above setxattr results in creating a new LV in corresponding brick's VG
and it sets 'user.glusterfs.bd' with value 'lv:<default-extent-size'
[root@node ~]# truncate -s5G /media/image/lv1
It results in resizig LV 'lv1'to 5G
New BD xlator code is placed in xlators/storage/bd directory.
Also add volume-uuid to the VG so that same VG can't be used for other
bricks/volumes. After deleting a gluster volume, one has to manually
remove the associated tag using vgchange <vg-name> --deltag
<trusted.glusterfs.volume-id:<volume-id>>
Changes from previous version V5:
* Removed support for delayed deleting of LVs
Changes from previous version V4:
* Consolidated the patches
* Removed usage of BD_XATTR_SIZE and consolidated it in BD_XATTR.
Changes from previous version V3:
* Added support in FUSE to support full/linked clone
* Added support to merge snapshots and provide information about origin
* bd_map xlator removed
* iatt structure used in inode_ctx. iatt is cached and updated during
fsync/flush
* aio support
* Type and capabilities of volume are exported through getxattr
Changes from version 2:
* Used inode_context for caching BD size and to check if loc/fd is BD or
not.
* Added GlusterFS server offloaded copy and snapshot through setfattr
FOP. As part of this libgfapi is modified.
* BD xlator supports stripe
* During unlinking if a LV file is already opened, its added to delete
list and bd_del_thread tries to delete from this list when a last
reference to that file is closed.
Changes from previous version:
* gfid is used as name of LV
* ? is used to specify VG name for creating BD volume in volume
create, add-brick. gluster volume create volname host:/path?vg
* open-behind issue is fixed
* A replicate brick can be added dynamically and LVs from source brick
are replicated to destination brick
* A distribute brick can be added dynamically and rebalance operation
distributes existing LVs/files to the new brick
* Thin provisioning support added.
* bd_map xlator support retained
* setfattr -n user.glusterfs.bd -v "lv" creates a regular LV and
setfattr -n user.glusterfs.bd -v "thin" creates thin LV
* Capability and backend information added to gluster volume info (and
--xml) so
that management tools can exploit BD xlator.
* tracing support for bd xlator added
TODO:
* Add support to display snapshots for a given LV
* Display posix filename for list-origin instead of gfid
Change-Id: I00d32dfbab3b7c806e0841515c86c3aa519332f2
BUG: 1028672
Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>
Reviewed-on: http://review.gluster.org/4809
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Remove bd_map xlator and CLI related changes.
Change-Id: If7086205df1907127c1a1fa4ba603f1c48421d09
BUG: 1028672
Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>
Reviewed-on: http://review.gluster.org/5747
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Change-Id: I91dcb19ba4d31c17e6041155c0e59af457b87f1b
BUG: 1028871
Signed-off-by: Vijaykumar M <vmallika@redhat.com>
Reviewed-on: http://review.gluster.org/6245
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
--xml is specified
When 'volume rebalance' encounters an error the cli prints the
error message in plain text independent of whether --xml is
specified. This throws off client application that expect xml
output (as mentioned in bz1026143).
Now, if the --xml flag is supplied, the cli print 'volume
rebalance' error messages in xml format.
Change-Id: I16c6a7a4cdd2819eb73422ab849125986dc299a6
BUG: 1026143
Signed-off-by: Dawit Alemu <dalemu@redhat.com>
Reviewed-on: http://review.gluster.org/6242
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the current context "replica_cnt" is used just to know whether the
specific key exists or not by calling "dict_get_int32", which we can
replace by "dict_get ()". And changing the log message as it is more
appropriate to say "migration of data" rather than "rebalance".
This patch refactors commit 51c6fa7a354826744de98 against BZ 961669
reviewed on : http://review.gluster.org/5566
Change-Id: I48eae206a28d4083975e64407ed8fe4539f9c24b
BUG: 1027270
Signed-off-by: Ravishankar N <ravishankar@redhat.com>
Original patch: Susant Palai <spalai@redhat.com>
Reviewed-on: http://review.gluster.org/6001
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com>
Reviewed-by: susant palai <spalai@redhat.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Quota volume reset command without "force"
option fixed, doesn't fail anymore. It resets
unprotected fields and not the protected ones.
Also, an appropriate message is provided to the user
for the following cases :
1. only unprotected fields are reset, "force" option
should be used to reset protected fields.
2. Both protected and unprotected fields are reset.
3. No field was reset, "force" option required.
Test case for the same also added.
Change-Id: I24e8f1be87b79ccd81bf6f933e00608b861c7a16
BUG: 1022905
Signed-off-by: Anuradha <atalur@redhat.com>
Reviewed-on: http://review.gluster.org/6135
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Glusterd changes:
With this patch, glusterd creates a socket file in
DATADIR/run/glusterd.socket , and listen on it for cli requests. It
listens for 2 rpc programs on the socket file,
- The glusterd cli rpc program, for all cli commands
- A reduced glusterd handshake program, just for the 'system:: getspec'
command
The location of the socket file can be changed with the glusterd option
'glusterd-sockfile'.
To retain compatibility with the '--remote-host' cli option, glusterd
also listens for the cli requests on port 24007. But, for the sake of
security, it listens using a reduced cli rpc program on the port. The
reduced rpc program only contains read-only procs used for 'volume
(info|list|status)', 'peer status' and 'system:: getwd' cli commands.
CLI changes:
The gluster cli now uses the glusterd socket file for communicating with
glusterd by default. A new option '--gluster-sock' has been added to
allow specifying the sockfile used to connect. Using the '--remote-host'
option will make cli connect to the given host & port.
Tests changes:
cluster.rc has been modified to make use of socket files and use
different log files for each glusterd.
Some of the tests using cluster.rc have been fixed.
Change-Id: Iaf24bc22f42f8014a5fa300ce37c7fc9b1b92b53
BUG: 980754
Signed-off-by: Kaushal M <kaushal@redhat.com>
Reviewed-on: http://review.gluster.org/5280
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently to know the number of files to be healed, either user
has to go to backend and check the number of entries present in
indices/xattrop directory. But if a volume consists of large
number of bricks, going to each backend and counting the number
of entries is a time-taking task. Otherwise user can give
gluster volume heal vol-name info command but with this
approach if no. of entries are very hugh in the indices/
xattrop directory, it will comsume time.
So as a feature, new command is implemented.
Command 1: gluster volume heal vn statistics heal-count
This command will get the number of entries present in
every brick of a volume. The output displays only entries
count.
Command 2: gluster volume heal vn statistics heal-count
replica 192.168.122.1:/home/user/brickname
Here if we are concerned with just one replica.
So providing any one of the brick of a replica will get
the number of entries to be healed for that replica only.
Example:
Replicate volume with replica count 2.
Backend status:
--------------
[root@dhcp-0-17 xattrop]# ls -lia | wc -l
1918
NOTE: Out of 1918, 2 entries are <xattrop-gfid> dummy
entries so actual no. of entries to be healed are
1916.
[root@dhcp-0-17 xattrop]# pwd
/home/user/2ty/.glusterfs/indices/xattrop
Command output:
--------------
Gathering count of entries to be healed on volume volume3 has been successful
Brick 192.168.122.1:/home/user/22iu
Status: Brick is Not connected
Entries count is not available
Brick 192.168.122.1:/home/user/2ty
Number of entries: 1916
Change-Id: I72452f3de50502dc898076ec74d434d9e77fd290
BUG: 1015990
Signed-off-by: Venkatesh Somyajulu <vsomyaju@redhat.com>
Reviewed-on: http://review.gluster.org/6044
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"gluster volume heal volumename statistics" command gives the summary
of the afr crawl done based on the entries present in the xattrop
directory. Whenever afr crawls are attempted, the beginning time of
crawl, end time of crawl, no of files healed, heal-failed count and
number of files in split brain are shown along with the type of the
crawl. If crawl is already in progress then it will give the number
of files healed, heal failed count and number of files in split-brain
from the beginning of the crawl and instead of telling the end time of
the crawl, "CRAWL IN PROGRESS" message will be shown.
Output format:
command: "gluster volume heal volume-name statistics"
Output:
Gathering afr crawl statistics crawl statistics on volume volume-name
has been successful
------------------------------------------------
Crawl statistics for brick no 0
Hostname of brick 192.168.122.248
Starting time of crawl: Wed Jul 10 15:52:38 2013
Ending time of crawl: Wed Jul 10 15:52:38 2013
Type of crawl: INDEX
No. of entries healed: 0
No. of entries in split-brain: 0
No. of heal failed entries: 0
Starting time of crawl: Wed Jul 10 15:52:38 2013
Ending time of crawl: Wed Jul 10 15:52:38 2013
Type of crawl: INDEX
No. of entries healed: 0
No. of entries in split-brain: 0
No. of heal failed entries: 0
------------------------------------------------
Crawl statistics for brick no 1
Hostname of brick 192.168.122.1
Starting time of crawl: Wed Jul 10 15:52:42 2013
Ending time of crawl: Wed Jul 10 15:52:42 2013
Type of crawl: INDEX
No. of entries healed: 0
No. of entries in split-brain: 0
No. of heal failed entries: 0
Starting time of crawl: Wed Jul 10 15:52:42 2013
Ending time of crawl: Wed Jul 10 15:52:42 2013
Type of crawl: INDEX
No. of entries healed: 0
No. of entries in split-brain: 0
No. of heal failed entries: 0
--------------------------------------------------
Change-Id: I10bf9d10b005741db9973fb1352e0dd59ed99aa9
BUG: 949400
Signed-off-by: Venkatesh Somyajulu <vsomyaju@redhat.com>
Reviewed-on: http://review.gluster.org/4790
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
oVirt's Gluster Integration needs an inexpensive command that can be
executed every 10 seconds to monitor async tasks and their parameters,
for all volumes.
The solution involves adding a 'tasks' sub-command to 'volume status'
to fetch only the async task IDs, type and other relevant parameters.
Only the originator glusterd participates in this command as all the
information needed is available on all the nodes. This is to make the
command suitable for being executed every 10 seconds.
Change-Id: I1edc607baf29b001a5585079dec681d7c641b3d1
BUG: 1012346
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
Reviewed-on: http://review.gluster.org/6006
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Kaushal M <kaushal@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds node uuid in rebalance/remove-brick status xml output.
Output XML will look like
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cliOutput>
<opRet>0</opRet>
<opErrno>0</opErrno>
<opErrstr/>
<volRebalance>
<op>3</op>
<nodeCount>1</nodeCount>
<node>
<nodeName>localhost</nodeName>
==>> <id>883626f8-4d29-4d02-8c5d-c9f48c5b2445</id>
<files>0</files>
<size>0</size>
<lookups>0</lookups>
<failures>0</failures>
<status>3</status>
<statusStr>completed</statusStr>
</node>
<aggregate>
<files>0</files>
<size>0</size>
<lookups>0</lookups>
<failures>0</failures>
<status>3</status>
<statusStr>completed</statusStr>
</aggregate>
</volRebalance>
</cliOutput>
Change-Id: I5a1d4f9043b33b9e88150647a243ddb16154e843
BUG: 1012296
Signed-off-by: Bala.FA <barumuga@redhat.com>
Reviewed-on: http://review.gluster.org/6005
Reviewed-by: Kaushal M <kaushal@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"runtime in secs" is available in the CLI output of
rebalance status and remove-brick status, but not available
in xml output when --xml is passed.
runtime in aggregate section will be max of all nodes runtimes.
Example output:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<cliOutput>
<opRet>0</opRet>
<opErrno>0</opErrno>
<opErrstr/>
<volRebalance>
<op>3</op>
<nodeCount>1</nodeCount>
<node>
<nodeName>localhost</nodeName>
<files>0</files>
<size>0</size>
<lookups>0</lookups>
<failures>0</failures>
<skipped>0</skipped>
<runtime>1.00</runtime>
<status>3</status>
<statusStr>completed</statusStr>
</node>
<aggregate>
<files>0</files>
<size>0</size>
<lookups>0</lookups>
<failures>0</failures>
<skipped>0</skipped>
<runtime>1.00</runtime>
<status>3</status>
<statusStr>completed</statusStr>
</aggregate>
</volRebalance>
</cliOutput>
BUG: 1012773
Change-Id: I8deaba08922a53cd2d3b411e097a7b3cf591b127
Signed-off-by: Aravinda VK <avishwan@redhat.com>
Reviewed-on: http://review.gluster.org/5997
Reviewed-by: Kaushal M <kaushal@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
|