| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
| |
Also block operation on response aggregation errors.
Change-Id: I641ddc98d986fd44627d790ab84488a6b849f807
BUG: 1043792
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fetching snap mount path per brick during pre-validate
and aggregating it before commit to generate all brick
volfiles and all client volfiles on all nodes.
Added changes to propagate the same cg-id by generating
it in pre-validate and sending the same to all the nodes
during commit
Also fixed volume-id mismatches caused in snap-volumes
leading to failures of volume status
Change-Id: I0b8ed81ac93077cd50313e6eeed00f71932cf2ac
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
Signed-off-by: Rajesh Joseph <rjoseph@redhat.com>
|
|
|
|
|
| |
Change-Id: I94b5f6e00be7d1ff0c454e291c779dae7b423748
Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
| |
failure.
Also handles empty string(not NULL) in gd_syncop_mgmt_brick_op()
and adds "Snapshot" in operation list used for printing op
during logging.
Change-Id: Icac9dce6bf1c087ab2aace9953e2af3a0fb81be6
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|
|
|
|
|
|
|
|
| |
Setting 'is_synctasked' as gf_true for glusterd_mgmt_v3_initiate_snap_phases()
to initiate multiple volume locks.
Change-Id: Ib225fbac42b5e9cf9f3af0083d33ec49a1b87964
Signed-off-by: Avra Sengupta <asengupt@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 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-Id: Iafbd0ec95de0c41455fb79953fb4bb07721334a5
Signed-off-by: shishir gowda <sgowda@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is still a work in progress.
As of now, these things are done:
* Take the snapshot of the backend brick
* Create the new volume for the snapshot
* Create the brick and the client volfiles
* Store the snapshot related info in /var/lib/glusterd
* Create the snap object representing the snapshot
TODO:
Start the brick processes for the snapshot
Change-Id: I26fbb0f8e5cf004d4c1dbca51819bab1cd1bac15
Signed-off-by: Raghavendra Bhat <raghavendra@redhat.com>
|
|
|
|
|
|
|
| |
Also linking snap create command to mgmt_v3
Change-Id: If2ed29be072e10d0b0bd271d53e48eeaa6501ed7
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|
|
|
|
|
|
|
|
|
| |
Defining separate interfaces for every phase to make use
of the rpcs and providing set of integrated interfaces for
commands to consume
Change-Id: I6d464326c5a8b5875a7c2539c9df072b23fe61a9
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|
|
glusterd mgmt_v3 is nothing but a complete synctask approach
for glusterd to function. The commands making use of this
won't be using the op-state machine to inject events and
will be using the synctask framework to perform operations
across all nodes in the cluster. This patch defines the
program and the handlers used.
Change-Id: Ibff2c62b0187c40cdea7254c85786297bba60372
Signed-off-by: Avra Sengupta <asengupt@redhat.com>
|