summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* glusterd/snapshot: Addressed upstream review commentsHEADdevelopmentRajesh Joseph2014-04-079-312/+368
| | | | | | | | | | Code cleanup and review comments fixed. Change-Id: Ie51e3a2f995295632cb1db05bab8b38603ab9a0a Signed-off-by: Rajesh Joseph <rjoseph@redhat.com> Reviewed-on: http://review.gluster.org/7399 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Avra Sengupta <asengupt@redhat.com>
* glusterd/snapshot : Fix for snap creation beyond effective snap-max-hard-limit.Sachin Pandit2014-04-041-3/+14
| | | | | | | | | | Change-Id: I679a1b01bb9d8a41fe463acf4406d896caf939c8 BUG: 1083879 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7396 Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* cli/snapshot : cli fixes for upstream review comments.Sachin Pandit2014-04-043-53/+60
| | | | | | | | | Change-Id: I69f32920dc48c6c52b579c792f28951bb38db344 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7385 Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: code cleanup and fixes for review commentsVijaikumar M2014-04-042-286/+86
| | | | | | | | | Change-Id: I358c30b42e71e5e1ddaeb5a3954bdd590671839b Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7386 Reviewed-by: Avra Sengupta <asengupt@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Recording the snapshots missed in each brick.Avra Sengupta2014-04-0211-62/+1203
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Persisting missing snapshot info on disk as well as in memory in the following format: -------------NODE-UUID--------------:---------SNAP-UUID--------------=BRICKNUM:-------BRICKPATH--------:OPERATION:STATUS 927cb5fe-63da-48f5-82f6-e6a09ddc81c4:a17b4fe42c5a45f7a916438643edaa13= 3 :/brick/brick-dirs/brick3: 1 : 1 927cb5fe-63da-48f5-82f6-e6a09ddc81c4:a17b4fe42c5a45f7a916438643edaa13= 3 :/brick/brick-dirs/brick3: 3 : 1 927cb5fe-63da-48f5-82f6-e6a09ddc81c4:83a3cc05453b46b2a7eda4c9a9208638= 3 :/brick/brick-dirs/brick3: 1 : 1 This data will be stored on disk at /var/lib/glusterd/snaps/missed_snaps_list In memory we maintain the data as a list of glusterd_missed_snap_info in conf, the key for this list are the first two fields, i.e NODE-UUID:SNAP-UUID. For every NODE-UUID:SNAP-UUID, there can be multiple operations missed on multiple bricks. So we maintain a list of glusterd_snap_op_t for evert node of glusterd_missed_snap_info This list is maintained or updated during snapshot create, delete, and restore operations which are the only operations that if missed, are recorded in this list. During snapshot create, if a node is down, or a brick is down, we don't receive their mount point infos. snap_status of such bricks is marked as -1, and their brick details are added to this list. During snapshot delete, we check from originator node, if any other nodes, holding bricks of the said snap are down. Those are also added to the list. Also if the node is up, but the snapshot was pending for a snap brick, and its snap_status is -1, we add that to the list too. When a subsequent delete entry is processed for an already existing create entry, we just mark the create entries status as done (2), and don't add the delete entry to the list. During snapshot restore, we check from originator node, if any other nodes, holding bricks of the said snap are down. Those are also added to the list. Also if the node is up, but the snapshot was pending for a snap brick, and its snap_status is -1, we add that to the list too. Change-Id: I22578d14f81a54e13f6832966b70cd4cfdfd5b44 Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7208 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Making snap operations crash consistentAvra Sengupta2014-04-027-53/+206
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the events of a volume's brick being down, or a node being down, making snap ops like create, delete, restore, and status crash consistent. Marking snap status of snap bricks which were not snapshotted because the volume brick was down as -1, and not starting those snap bricks till the snapshot is taken. During delete bypassing lvm snapshot remove for snap bricks whose snap status is -1 During restore bypass replacing xattrs on the snapshot bricks whose snap status is -1. Also bumping restored volume's version so as to handle nodes being down. On handshake of a restored volume, passing brick's snap_status as well. During snapshot status of the non-snapshotted brick details display "N/A". If a node is down, the entry itself will not be displayed. Change-Id: Id042efd7507829995270da0b2b2a6282a08a053d Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7241 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Storing dynamic strings in dictAvra Sengupta2014-04-021-4/+30
| | | | | | | | | | | | | | Taking a duplicate of a string and storing it as a dynamic string in the dictionary, so that it is independent of the source string. Change-Id: Ib7d18ab8e7342fd71dad80d03259f76a5d2bd66d BUG: 1077196 Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7381 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Using original brickinfo for snap brick pathAvra Sengupta2014-04-025-161/+262
| | | | | | | | | | | | | Using /var/run/gluster/snaps/<snap-uuid>/ <original brick number>/<original brick's mount dir> as the snapshot brick path Change-Id: Icdd838512e662ed687662188bd197ed1a889fbea Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7231 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: fixed review comment for upstream restsoreRajesh Joseph2014-03-281-13/+3
| | | | | | | | | code cleanup Change-Id: I4965cc6fb9f8310cb1075047175f5e1139dd2aea Signed-off-by: Rajesh Joseph <rjoseph@redhat.com> Reviewed-on: http://review.gluster.org/7366 Reviewed-by: Avra Sengupta <asengupt@redhat.com>
* Crash Fixes introduced by review commentsAvra Sengupta2014-03-281-4/+0
| | | | | | | | | | Change-Id: I22f9828e39494a8e1ad37c9a2ff78866d117e6af Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7365 Reviewed-by: Sachin Pandit <spandit@redhat.com> Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* Review CommentsAvra Sengupta2014-03-277-189/+345
| | | | | | | | Change-Id: Ifce90b0b617bc0b43a9af0bd692a7290820ac62c Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7358 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot : glusterd-utils related fix for upstream review commentsSachin Pandit2014-03-271-30/+28
| | | | | | | | Change-Id: I7add37a8e8a7d68de9d4c09110987ed1afd2f86c Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7356 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot:store related fix for the review comments in the upstreamVijaikumar M2014-03-272-6/+10
| | | | | | | | Change-Id: I07da1f0a102b71c7c70dac83b1fe98d05607cb64 Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7355 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot : remove snap_volume variable from struct glusterd_snap_Vijaikumar M2014-03-254-96/+91
| | | | | | | | Change-Id: I3c5eae3f199d97a2fe70599e2cdb4c357d20f20d Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7197 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* snapshot/config : snapshot config changes.Sachin Pandit2014-03-257-254/+389
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Syntax : gluster snapshot config [volname] [snap-max-hard-limit <value>] [snap-max-soft-limit <value>] 1)If volume name is not specified, then the value is set system wide. 2)If volume name is specified, then the value is set to that particular volume. *NOTE : snap-max-soft-limit cannot be specified to individual volumes. case 1) When system limit is greater than volume limit. Sample output : Snapshot System Configuration: snap-max-hard-limit : 200 snap-max-soft-limit : 50% Snapshot Volume Configuration: Volume : vol2 snap-max-hard-limit : 100 Effective snap-max-hard-limit : 100 Effective snap-max-soft-limit : 50 (50%) Volume : vol1 snap-max-hard-limit : 150 Effective snap-max-hard-limit : 150 Effective snap-max-soft-limit : 75 (50%) case 2) When system limit is lesser than volume limit. Sample output : Snapshot System Configuration: snap-max-hard-limit : 50 snap-max-soft-limit : 50% Snapshot Volume Configuration: Volume : vol2 snap-max-hard-limit : 100 Effective snap-max-hard-limit : 50 Effective snap-max-soft-limit : 25 (50%) Volume : vol1 snap-max-hard-limit : 150 Effective snap-max-hard-limit : 50 Effective snap-max-soft-limit : 25 (50%) Change-Id: I97b5daefec7205bb9ab7b5b51d38f504cc5ee940 BUG: 1075034 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7303 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* snapshot : Fix for not deleting volumes with snapshotsJoseph Fernandes2014-03-251-0/+10
| | | | | | | | | | | | | Error out when trying to delete volume with snapshots. Check the snap_count in glusterd_op_stage_delete_volume() Change-Id: I4f0d62cbb469bb75f39ea966274f56810fa89333 BUG: 1077655 Signed-off-by: Joseph Fernandes <josferna@redhat.com> Reviewed-on: http://review.gluster.org/7304 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* snapshot: cleanup unwanted CG-codeVijaikumar M2014-03-257-857/+20
| | | | | | | | | Change-Id: Id3da2a7aac84027aeff050f6dd9a3484719362bc BUG: 1073780 Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7204 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: populate the snapshot volume list in the order when the ↵Vijaikumar M2014-03-253-2/+24
| | | | | | | | | | | | | | glusterd is restarted We are storing the snapshot objects in the order. We need to do the same for snapshot volumes Change-Id: Iea9594632e52d069f167cc8a840c78d0f7109947 Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7307 Reviewed-by: Sachin Pandit <spandit@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/mgmt_v3_locks: Send CLI response only after doing unlockVijaikumar M2014-03-251-35/+36
| | | | | | | | | Change-Id: Ibeaa1377b904430fabea5dec2d38b87c1bd52161 BUG: 1077196 Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7288 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Correct the error message when the snapshot name isVijaikumar M2014-03-252-2/+2
| | | | | | | | | | | | more than 255 characters Change-Id: Iaab6889a86ab39fa73eebf30dc08af98d5a774bc BUG: 1078166 Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7296 Reviewed-by: Avra Sengupta <asengupt@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* mgmt/glusterd: do cleanup of snapshots in post-validate phase if half bakedRaghavendra Bhat2014-03-2410-38/+348
| | | | | | | | | | objects are there Change-Id: I372cac98ad054cdc1a6fbc7f6c77c25981063b2f Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com> Reviewed-on: http://review.gluster.org/7237 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* snapshot restore: Fix error message while volume started.Joseph Fernandes2014-03-241-1/+3
| | | | | | | | | | | | | | Repharse of snap restore failure message when volume is started. Change-Id: Ie3e47856f60ff5d395fca1308cea9a5350a861f3 BUG: 1063775 Signed-off-by: Joseph Fernandes <josferna@redhat.com> Reviewed-on: http://review.gluster.org/7295 Reviewed-by: Sachin Pandit <spandit@redhat.com> Reviewed-by: Avra Sengupta <asengupt@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* cli/snapshot : Clear messages while creating SNAP with invalid scenarios.Sachin Pandit2014-03-241-3/+18
| | | | | | | | | | | | | | 1) Create with Description key and without actual description will display proper message. 2) Create with snapname containing special character will fail (volname convention is followed). 3) Create with Multiple Description will fail with proper message. Change-Id: I9173a0ffe2bf77c10a4e383268bd8d99906217a0 BUG: 1040978 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7324 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot : Restore fix.Sachin Pandit2014-03-172-0/+10
| | | | | | | | | | | | Copy the snapshot present in origin volume to the restored volume. Change-Id: Icea9f712ae062b50b570d27b85cd231903446198 BUG: 1077142 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7282 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* cli/snapshot : Fix for snapshot create fail.Sachin Pandit2014-03-142-2/+21
| | | | | | | | | Change-Id: Ib3c239eadbcfc787f4f7d0734839c8425e93020a BUG: 1076356 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7275 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* snapshot : Fix for snapshot info ambiguous output.Sachin Pandit2014-03-132-30/+70
| | | | | | | | | Change-Id: I27e50921a2e030ae50b1fd28ee7ab0be65b313fd BUG: 1075454 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7228 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* cli/snapshot : Fix for snapshot create with snapname l,r,i,d.Sachin Pandit2014-03-131-14/+28
| | | | | | | | | | Change-Id: Ib7fd1ca766997bce86062e5c10c5acf7e5edae60 BUG: 1075512 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7236 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Validate snapshot name length while creationVijaikumar M2014-03-134-2/+18
| | | | | | | | Change-Id: Iaee04f5209e278d83c086e32c4cafd6c571370cd Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7242 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Fix brick statusVijaikumar M2014-03-133-2/+46
| | | | | | | | | | Change-Id: I04ff2ddf5c644dde2051b8a692d287e87ba59942 Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7240 Reviewed-by: Sachin Pandit <spandit@redhat.com> Tested-by: Sachin Pandit <spandit@redhat.com> Reviewed-by: Avra Sengupta <asengupt@redhat.com> Tested-by: Avra Sengupta <asengupt@redhat.com>
* snapshot : Output correction in snapshot info and create.Sachin Pandit2014-03-132-2/+2
| | | | | | | | | | Change-Id: Ic468e2e64bdfc0f7d79453524a1b2ebc9b445906 BUG: 1075446 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7225 Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Validate path provided for snapshot mountVijaikumar M2014-03-131-0/+13
| | | | | | | | | | | Change-Id: Ia534b02051ada58586318b109f40c5ff77148527 BUG: 1075527 Signed-off-by: Vijaikumar M <vmallika@redhat.com> Reviewed-on: http://review.gluster.org/7239 Reviewed-by: Sachin Pandit <spandit@redhat.com> Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* feature/snapshot : Snapshot status.Sachin Pandit2014-03-136-14/+1302
| | | | | | | | | | | | | | | | | | | | Snapshot status command is used to display the status of available snapshot. The status command will display the Brick path, Volume Group, Brick pid, Whether brick is online, Percentage of data filled, Logical Volume size. The syntax for using snapshot status is : gluster snapshot status [(snapname | volume <volname>)] Change-Id: I621911c305e20ca83d958ff1f8762bef1f2f12f0 Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7134 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* snapshot/restore: Restore failed in multiple node testRajesh Joseph2014-03-131-15/+18
| | | | | | | | | | | | | | Failed to set extended attribute on bricks on some nodes. Extended attribute should only be set for local node. Change-Id: Ib5b47b15d2f6f93e146d3d75e9061fccc9570a80 Signed-off-by: Rajesh Joseph <rjoseph@redhat.com> Reviewed-on: http://review.gluster.org/7213 Reviewed-by: Sachin Pandit <spandit@redhat.com> Tested-by: Sachin Pandit <spandit@redhat.com> Reviewed-by: Avra Sengupta <asengupt@redhat.com> Tested-by: Avra Sengupta <asengupt@redhat.com>
* glusterd/snapshot : Show volume status in snap info.Sachin Pandit2014-03-102-0/+18
| | | | | | | | | Change-Id: Ifa090b158ca23402fb6afa4f3b65fad1446f350d Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7212 Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot : Introduced a macro for snapshot info command.Sachin Pandit2014-03-104-47/+107
| | | | | | | | | | | | | 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>
* snapshot/restore : Snapshot restore changes.Sachin Pandit2014-03-104-400/+138
| | | | | | | | | | | | | | | | 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>
* glusterd/snapshot: Modified restore backendRajesh Joseph2014-03-106-477/+282
| | | | | | | | | | | | | | Now instead of creating volume store files first we constructing the in-memory volinfo first and then generate the backend store files. This gives lot of flexibility in restore operation. This patch also fixes the read-only issue with restored snaps. Change-Id: I51032228a5212fc3b90dc6e93f3539af3eb36074 BUG: 1064688 Signed-off-by: Rajesh Joseph <rjoseph@redhat.com> Reviewed-on: http://review.gluster.org/7209 Reviewed-by: Sachin Pandit <spandit@redhat.com> Reviewed-by: Vijaikumar Mallikarjuna <vmallika@redhat.com>
* glusterd/mgmt_v3 locks. Testcase for mgmt_v3 locks.Avra Sengupta2014-03-074-6/+129
| | | | | | | | | | Ported upstream volume-locks.t as mgmt-v3-locks.t Change-Id: Id4824716cde4ac54efbf1c1dd9a5f530b0324e39 Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7190 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/mgmt_v3 locks: Using snaps as an entity for mgmt_v3 locks.Avra Sengupta2014-03-076-207/+429
| | | | | | | | | | | | 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>
* glusterd/mgmt_v3 locks: Handling different entities with mgmt_v3_locks.Avra Sengupta2014-03-077-43/+111
| | | | | | | | | | | | | | | | | Within the same namespace allowing mgmt_v3 lock engine to handle entities of valid types. Postfixing the element's name with the entity type allows us to perform locking operations on different elements of different entitites at the same time. For example: A volume named test, will acquire a lock on the name test_vol, while a snap named test will acquire lock on the name test_snap, and thus be allowed to co-exist in the same namespace. Change-Id: I611d1a59b707e497d35a37bdca5a66e29a1b6f06 Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7188 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/mgmt_v3 locks: Generalization of the volume wide locks.Avra Sengupta2014-03-0716-325/+331
| | | | | | | | | | Renaming volume locks as mgmt_v3 locks Change-Id: I2a324e2b8e1772d7b165fe96ce8ba5b902c2ed9a Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/7187 Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* gluster/snapshot: Create missing backend snapshot folderRajesh Joseph2014-03-073-47/+79
| | | | | | | | | | | | | | | | Snapshot volume bricks are mounted under /var/run/gluster/snaps folder. In the latest machines /var/run is a symbolic link to /run folder. In such cases if we use /var/run then there would be mismatch between mtab entry for the mount and the folder where we actually mount. Therefore this patch will get the correct folder and also create it if the folder is missing. Change-Id: I267aa7f3e171b486c5b3bb2a9f88cbd4be0e47ea BUG: 1072253 Signed-off-by: Rajesh Joseph <rjoseph@redhat.com> Reviewed-on: http://review.gluster.org/7140
* glusterd/snapshot: snapshot list and info changesVijaikumar M2014-03-061-776/+423
| | | | | | | | | | | | This changes includes snap-driven based list and info changes: Change-Id: Ie82a2a3c785baa36892ca0cd97a958a2ae819d4c Signed-off-by: Vijaikumar M <vmallika@redhat.com> Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7139 Reviewed-by: Avra Sengupta <asengupt@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/snapshot: Snapshot create and delete changesVijaikumar M2014-03-0612-1177/+686
| | | | | | | | | | | | | | | | | | | 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>
* cli/snapshot : snapshot delete CLI changes.Sachin Pandit2014-03-057-32/+70
| | | | | | | | | | | 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>
* cli/snapshot : snapshot list CLISachin Pandit2014-03-053-4/+104
| | | | | | | | | | | | | 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>
* CLI/snapshot : Snapshot info CLI changesSachin Pandit2014-03-054-545/+362
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* CLI/snapshot : Snapshot create CLI changes.Sachin Pandit2014-03-042-186/+133
| | | | | | | | | | | | | | | | | | | | | | 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>
* glusterd/snapshot: store location for snap driven changesVijaikumar M2014-03-0315-1816/+951
| | | | | | | | | | | | | | | | Currently snapshot volfiles are stored at: <workdir>/vols/<volname>/snaps/<snapvol> With snap driven approach we need to store the volfiles at: <workdir>/snaps/<snapname>/<snapvol> Change-Id: I8efdd5db29833b2b06b64a900cbb4c9b9a5d36b6 Signed-off-by: Vijaikumar M <vmallika@redhat.com> Signed-off-by: Sachin Pandit <spandit@redhat.com> Reviewed-on: http://review.gluster.org/7006 Reviewed-by: Avra Sengupta <asengupt@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>
* glusterd/Volume Lock: Corrupted Txn Id FixAvra Sengupta2014-03-035-5/+53
| | | | | | | | | | Change-Id: Ic988ffeb26a49b4c6ac0d4a8ca33124f2192744c BUG: 1064768 Signed-off-by: Avra Sengupta <asengupt@redhat.com> Reviewed-on: http://review.gluster.org/6997 Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com> Reviewed-by: Rajesh Joseph <rjoseph@redhat.com> Tested-by: Rajesh Joseph <rjoseph@redhat.com>