summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt/glusterd/src/glusterd-volgen.c
diff options
context:
space:
mode:
authorVijaikumar M <vmallika@redhat.com>2014-02-14 20:01:38 +0530
committerRajesh Joseph <rjoseph@redhat.com>2014-03-03 22:58:23 -0800
commitfe5927b6bd1ed795c9e85996e7c54c3abe36ceba (patch)
treed69e25c323a4b57c49af8555db75ff65c9690701 /xlators/mgmt/glusterd/src/glusterd-volgen.c
parent60d4f64cea4752f76b9495bdea255b51d09820ff (diff)
glusterd/snapshot: store location for snap driven changes
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>
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-volgen.c')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-volgen.c49
1 files changed, 6 insertions, 43 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.c b/xlators/mgmt/glusterd/src/glusterd-volgen.c
index 2565544a6..90886dcf3 100644
--- a/xlators/mgmt/glusterd/src/glusterd-volgen.c
+++ b/xlators/mgmt/glusterd/src/glusterd-volgen.c
@@ -3200,8 +3200,7 @@ glusterd_generate_snap_brick_volfile (glusterd_volinfo_t *volinfo,
if (vol_restore) {
GLUSTERD_GET_VOLUME_DIR (path, volinfo, priv);
} else {
- GLUSTERD_GET_SNAP_DIR (path, volinfo,
- snap_volinfo->volname, priv);
+ GLUSTERD_GET_VOLUME_DIR (path, snap_volinfo, priv);
}
snprintf (filename, PATH_MAX, "%s/%s.%s.%s.vol",
@@ -3440,8 +3439,7 @@ generate_snap_client_volfiles (glusterd_volinfo_t *actual_volinfo,
if (vol_restore) {
GLUSTERD_GET_VOLUME_DIR (path, actual_volinfo, conf);
} else {
- GLUSTERD_GET_SNAP_DIR (path, actual_volinfo,
- snap_volinfo->volname, conf);
+ GLUSTERD_GET_VOLUME_DIR (path, snap_volinfo, conf);
}
for (i = 0; types[i]; i++) {
@@ -3730,39 +3728,6 @@ glusterd_delete_volfile (glusterd_volinfo_t *volinfo,
}
int
-glusterd_delete_snap_volfile (glusterd_volinfo_t *volinfo,
- glusterd_volinfo_t *snap_volinfo,
- glusterd_brickinfo_t *brickinfo)
-{
- int ret = 0;
- char filename[PATH_MAX] = {0,};
- char brick[PATH_MAX] = {0, };
- char path[PATH_MAX] = {0, };
- glusterd_conf_t *priv = NULL;
-
- GF_ASSERT (volinfo);
- GF_ASSERT (brickinfo);
- GF_ASSERT (snap_volinfo);
-
- priv = THIS->private;
- GF_ASSERT (priv);
-
- GLUSTERD_REMOVE_SLASH_FROM_PATH (brickinfo->path, brick);
- GLUSTERD_GET_SNAP_DIR (path, volinfo, snap_volinfo->volname, priv);
-
- snprintf (filename, PATH_MAX, "%s/%s.%s.%s.vol",
- path, snap_volinfo->volname,
- brickinfo->hostname,
- brick);
-
- ret = unlink (filename);
- if (ret)
- gf_log ("glusterd", GF_LOG_ERROR, "failed to delete file: %s, "
- "reason: %s", filename, strerror (errno));
- return ret;
-}
-
-int
validate_shdopts (glusterd_volinfo_t *volinfo,
dict_t *val_dict,
char **op_errstr)
@@ -4392,8 +4357,7 @@ gd_update_origin_volume (glusterd_volinfo_t *orig_vol,
/* Stop the snap volume */
list_for_each_entry (brickinfo, &snap_vol->bricks, brick_list) {
- ret = glusterd_snap_brick_stop (orig_vol, snap_vol,
- brickinfo, _gf_false);
+ ret = glusterd_brick_stop (snap_vol, brickinfo, _gf_false);
if (ret) {
gf_log (this->name, GF_LOG_ERROR, "Failed to stop "
" %s brick", brickinfo->path);
@@ -4420,7 +4384,7 @@ gd_update_origin_volume (glusterd_volinfo_t *orig_vol,
}
/* Retrieve brick list */
- ret = glusterd_store_retrieve_bricks (orig_vol, NULL);
+ ret = glusterd_store_retrieve_bricks (orig_vol);
if (ret) {
gf_log (this->name, GF_LOG_ERROR, "Failed to retrieve "
"bricks info from store for %s volume",
@@ -4465,7 +4429,7 @@ gd_restore_snap_volume (glusterd_volinfo_t *orig_vol,
GF_VALIDATE_OR_GOTO (this->name, orig_vol, out);
GF_VALIDATE_OR_GOTO (this->name, snap_vol, out);
- GLUSTERD_GET_SNAP_DIR (snappath, orig_vol, snap_vol->volname, conf);
+ GLUSTERD_GET_VOLUME_DIR (snappath, snap_vol, conf);
GLUSTERD_GET_VOLUME_DIR (volpath, orig_vol, conf);
/* As mentioned earlier the snapshot restore is done by replacing
@@ -4489,8 +4453,7 @@ gd_restore_snap_volume (glusterd_volinfo_t *orig_vol,
}
GLUSTERD_GET_BRICK_DIR (oldfilename, orig_vol, conf);
- GLUSTERD_GET_SNAP_BRICK_DIR (newfilename, orig_vol,
- snap_vol->volname, conf);
+ GLUSTERD_GET_BRICK_DIR (newfilename, snap_vol, conf);
/* Backup and restore bricks folder and it's contents */
ret = gd_backup_and_restore_snap_files (orig_vol, oldfilename,