From df4a7d75765b042ddbda4cbcd419743a37767ec3 Mon Sep 17 00:00:00 2001 From: Vijay Bellur Date: Mon, 23 Aug 2010 03:51:21 +0000 Subject: glusterd: support for volume version and cksum Signed-off-by: Vijay Bellur Signed-off-by: Anand V. Avati BUG: 1310 () URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1310 --- xlators/mgmt/glusterd/src/glusterd-op-sm.c | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'xlators/mgmt/glusterd/src/glusterd-op-sm.c') diff --git a/xlators/mgmt/glusterd/src/glusterd-op-sm.c b/xlators/mgmt/glusterd/src/glusterd-op-sm.c index b243e7895..3b4b390d1 100644 --- a/xlators/mgmt/glusterd/src/glusterd-op-sm.c +++ b/xlators/mgmt/glusterd/src/glusterd-op-sm.c @@ -253,7 +253,7 @@ out: return ret; } -static int +int glusterd_volume_create_generate_volfiles (glusterd_volinfo_t *volinfo) { int32_t ret = -1; @@ -800,6 +800,7 @@ glusterd_op_create_volume (gd1_mgmt_stage_op_req *req) i++; } list_add_tail (&volinfo->vol_list, &priv->volumes); + volinfo->version++; ret = glusterd_store_create_volume (volinfo); @@ -811,6 +812,10 @@ glusterd_op_create_volume (gd1_mgmt_stage_op_req *req) goto out; + ret = glusterd_volume_compute_cksum (volinfo); + if (ret) + goto out; + out: return ret; } @@ -942,6 +947,12 @@ glusterd_op_add_brick (gd1_mgmt_stage_op_req *req) goto out; } + volinfo->version++; + + ret = glusterd_volume_compute_cksum (volinfo); + if (ret) + goto out; + ret = glusterd_store_update_volume (volinfo); if (ret) @@ -1879,6 +1890,12 @@ glusterd_op_remove_brick (gd1_mgmt_stage_op_req *req) goto out; } + volinfo->version++; + + ret = glusterd_volume_compute_cksum (volinfo); + if (ret) + goto out; + ret = glusterd_store_update_volume (volinfo); if (ret) -- cgit