summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt/glusterd/src/glusterd-store.c
diff options
context:
space:
mode:
authorKaushal M <kaushal@redhat.com>2013-04-01 17:55:30 +0530
committerVijay Bellur <vbellur@redhat.com>2013-04-26 01:45:06 -0700
commit915385553e46d65e0b91ce62066a5575b07ee44d (patch)
tree31544f7444ed6d4cf4169561ef0069d3dedfef7b /xlators/mgmt/glusterd/src/glusterd-store.c
parent6419bd804b9cf43ad08fc54ef605c77b0e7895af (diff)
glusterd: Introduce volume op-versions
Each volume is now associated with two op-versions, * op_version - the op-version of the highest op-versioned feature enabled * client_op_version - the op-version of the highest op-versioned feature enabled which affects the clients only. These two op-versions are generated dynamically and kept updated during runtime. Glusterd now uses the respective volumes' client-op-version during getspec requests. To achieve the above a new field in the vme table is introduced, client_option, this boolean field tells if the option is a client side option. Change-Id: I12c83b1dd29ab506026efd50d448cebbcee53c27 BUG: 907311 Signed-off-by: Kaushal M <kaushal@redhat.com> Reviewed-on: http://review.gluster.org/4584 Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com> Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-store.c')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-store.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-store.c b/xlators/mgmt/glusterd/src/glusterd-store.c
index 7e26eb4a74e..f89b648edd8 100644
--- a/xlators/mgmt/glusterd/src/glusterd-store.c
+++ b/xlators/mgmt/glusterd/src/glusterd-store.c
@@ -2582,6 +2582,8 @@ glusterd_store_retrieve_volume (char *volname)
if (ret)
goto out;
+ gd_update_volume_op_versions (volinfo);
+
list_add_tail (&volinfo->vol_list, &priv->volumes);
out: