diff options
author | Pavan Sondur <pavan@gluster.com> | 2010-09-22 02:01:36 +0000 |
---|---|---|
committer | Vijay Bellur <vijay@dev.gluster.com> | 2010-09-22 02:09:00 -0700 |
commit | 05fd7d004a307a1aba158df82a868e3d271fe966 (patch) | |
tree | be6f285e0c10c82c93dbd54179cccb4efd52bc93 /xlators/mgmt/glusterd/src/glusterd-volgen.c | |
parent | e6bdd4f642d5f4d0afbe76b21fdd644c326edb0e (diff) |
mgmt/glusterd: Restart src brick and add pump when replace brick cmds are given.
Signed-off-by: Pavan Vilas Sondur <pavan@gluster.com>
Signed-off-by: Vijay Bellur <vijay@dev.gluster.com>
BUG: 1669 (pump xlator should be excluded by default)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=1669
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-volgen.c')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-volgen.c | 38 |
1 files changed, 26 insertions, 12 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.c b/xlators/mgmt/glusterd/src/glusterd-volgen.c index f40dbe13d..46a05d965 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volgen.c +++ b/xlators/mgmt/glusterd/src/glusterd-volgen.c @@ -689,7 +689,7 @@ __write_access_control_xlator (FILE *file, dict_t *dict, const char *ac_str = "volume %s-access-control\n" " type features/access-control\n" " subvolumes %s\n" - "end-volume\n"; + "end-volume\n\n"; ret = dict_get_str (dict, "volname", &volname); if (ret) { @@ -1589,6 +1589,7 @@ generate_server_volfile (glusterd_brickinfo_t *brickinfo, char subvol[2048] = {0,}; char *volname = NULL; int ret = -1; + int activate_pump = 0; GF_ASSERT (filename); @@ -1635,23 +1636,36 @@ generate_server_volfile (glusterd_brickinfo_t *brickinfo, goto out; } - VOLGEN_GENERATE_VOLNAME (subvol, volname, "locks"); - - ret = __write_replace_brick_xlator (file, dict); + ret = dict_get_int32 (dict, "enable-pump", &activate_pump); if (ret) { gf_log ("", GF_LOG_DEBUG, - "Could not write xlator"); - goto out; + "Pump is disabled"); } - ret = __write_pump_xlator (file, dict, subvol); - if (ret) { + if (activate_pump) { gf_log ("", GF_LOG_DEBUG, - "Could not write xlator"); - goto out; - } + "Pump is enabled"); + + VOLGEN_GENERATE_VOLNAME (subvol, volname, "locks"); + + ret = __write_replace_brick_xlator (file, dict); + if (ret) { + gf_log ("", GF_LOG_DEBUG, + "Could not write xlator"); + goto out; + } + + ret = __write_pump_xlator (file, dict, subvol); + if (ret) { + gf_log ("", GF_LOG_DEBUG, + "Could not write xlator"); + goto out; + } + + VOLGEN_GENERATE_VOLNAME (subvol, volname, "pump"); + } else + VOLGEN_GENERATE_VOLNAME (subvol, volname, "locks"); - VOLGEN_GENERATE_VOLNAME (subvol, volname, "pump"); ret = dict_set_str (dict, "export-path", brickinfo->path); if (ret) { |