From 4777f12ba5a930016faa6ef9114d8ffc8304c77b Mon Sep 17 00:00:00 2001 From: Avra Sengupta Date: Wed, 10 Feb 2016 15:02:48 +0530 Subject: glusterd/snapshot : Remove stale pmap registry entry Backport of http://review.gluster.org/#/c/13420/ Perform a pmap_registry_remove on a stale registry entry from the previous run of snapd, which makes the query callback always return the older port number. Change-Id: I7fc504d2b09d32a9c945ec2c33e0e092a0d186ec BUG: 1309233 Signed-off-by: Avra Sengupta Reviewed-on: http://review.gluster.org/13420 Smoke: Gluster Build System NetBSD-regression: NetBSD Build System CentOS-regression: Gluster Build System Reviewed-by: Rajesh Joseph (cherry picked from commit bfe689d25ecde567a90135b47f31b89d7714aaf4) Reviewed-on: http://review.gluster.org/13457 --- xlators/mgmt/glusterd/src/glusterd-snapd-svc.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'xlators/mgmt') diff --git a/xlators/mgmt/glusterd/src/glusterd-snapd-svc.c b/xlators/mgmt/glusterd/src/glusterd-snapd-svc.c index 2df94eb92bb..993419c8926 100644 --- a/xlators/mgmt/glusterd/src/glusterd-snapd-svc.c +++ b/xlators/mgmt/glusterd/src/glusterd-snapd-svc.c @@ -294,6 +294,17 @@ glusterd_snapdsvc_start (glusterd_svc_t *svc, int flags) "--brick-name", snapd_id, "-S", svc->conn.sockpath, NULL); + /* Do a pmap registry remove on the older connected port */ + if (volinfo->snapd.port) { + ret = pmap_registry_remove (this, volinfo->snapd.port, + snapd_id, GF_PMAP_PORT_BRICKSERVER, + NULL); + if (ret) { + snprintf (msg, sizeof (msg), "Failed to remove pmap " + "registry for older signin"); + goto out; + } + } snapd_port = pmap_registry_alloc (THIS); if (!snapd_port) { -- cgit