diff options
author | Pavan Deolasee | 2016-03-22 07:52:41 +0000 |
---|---|---|
committer | Pavan Deolasee | 2016-10-18 10:04:33 +0000 |
commit | 03ee8e89befc1bccf7206a6fd61355f4fc0b2657 (patch) | |
tree | 547b4fb0d582ea184db181f7b32b36f93e5aace9 | |
parent | c161a88b480938792b7c5010e6f01838de101c06 (diff) |
Check if gtm/gtm_proxy directory has a .pid file before trying to stop the
server.
Before starting or initialising a new GTM/GTM proxy, we first try to stop
running server. But if server is not running, which is the case most often, it
will show an error This avoids those unnecessary error messages
-rw-r--r-- | contrib/pgxc_ctl/gtm_cmd.c | 33 |
1 files changed, 25 insertions, 8 deletions
diff --git a/contrib/pgxc_ctl/gtm_cmd.c b/contrib/pgxc_ctl/gtm_cmd.c index 7fc77ba28c..38ac3d84ae 100644 --- a/contrib/pgxc_ctl/gtm_cmd.c +++ b/contrib/pgxc_ctl/gtm_cmd.c @@ -70,9 +70,13 @@ cmd_t *prepare_initGtmMaster(bool stop) cmdInitGtmMaster = initCmd(sval(VAR_gtmMasterServer)); snprintf(newCommand(cmdInitGtmMaster), MAXLINE, "%s;" - "gtm_ctl -D %s -m immediate -Z gtm stop; rm -rf %s; mkdir -p %s;initgtm -Z gtm -D %s", + "[ -f %s/gtm.pid ] && gtm_ctl -D %s -m immediate -Z gtm stop;" + "rm -rf %s;" + "mkdir -p %s;" + "initgtm -Z gtm -D %s", remoteDirCheck, sval(VAR_gtmMasterDir), + sval(VAR_gtmMasterDir), sval(VAR_gtmMasterDir), sval(VAR_gtmMasterDir), sval(VAR_gtmMasterDir)); /* Then prepare gtm.conf file */ @@ -409,7 +413,11 @@ cmd_t *prepare_initGtmSlave(void) /* Kill current gtm, build work directory and run initgtm */ cmdInitGtm = initCmd(sval(VAR_gtmSlaveServer)); snprintf(newCommand(cmdInitGtm), MAXLINE, - "gtm_ctl -D %s -m immediate -Z gtm stop; rm -rf %s; mkdir -p %s; initgtm -Z gtm -D %s", + "[ -f %s/gtm.pid ] && gtm_ctl -D %s -m immediate -Z gtm stop;" + "rm -rf %s;" + "mkdir -p %s;" + "initgtm -Z gtm -D %s", + sval(VAR_gtmSlaveDir), sval(VAR_gtmSlaveDir), sval(VAR_gtmSlaveDir), sval(VAR_gtmSlaveDir), sval(VAR_gtmSlaveDir)); @@ -478,10 +486,13 @@ cmd_t *prepare_startGtmMaster(void) cmdGtmCtl = initCmd(sval(VAR_gtmMasterServer)); snprintf(newCommand(cmdGtmCtl), MAXLINE, - "gtm_ctl stop -Z gtm -D %s;" + "[ -f %s/gtm.pid ] && gtm_ctl stop -Z gtm -D %s;" "rm -f %s/register.node;" "gtm_ctl start -Z gtm -D %s", - sval(VAR_gtmMasterDir), sval(VAR_gtmMasterDir), sval(VAR_gtmMasterDir)); + sval(VAR_gtmMasterDir), + sval(VAR_gtmMasterDir), + sval(VAR_gtmMasterDir), + sval(VAR_gtmMasterDir)); return cmdGtmCtl; } @@ -517,10 +528,13 @@ cmd_t *prepare_startGtmSlave(void) } cmdGtmCtl = initCmd(sval(VAR_gtmSlaveServer)); snprintf(newCommand(cmdGtmCtl), MAXLINE, - "gtm_ctl stop -Z gtm -D %s;" + "[ -f %s/gtm.pid ] && gtm_ctl stop -Z gtm -D %s;" "rm -rf %s/register.node;" "gtm_ctl start -Z gtm -D %s", - sval(VAR_gtmSlaveDir), sval(VAR_gtmSlaveDir), sval(VAR_gtmSlaveDir)); + sval(VAR_gtmSlaveDir), + sval(VAR_gtmSlaveDir), + sval(VAR_gtmSlaveDir), + sval(VAR_gtmSlaveDir)); return (cmdGtmCtl); } @@ -553,6 +567,7 @@ cmd_t *prepare_stopGtmMaster(void) cmdGtmCtl = initCmd(sval(VAR_gtmMasterServer)); snprintf(newCommand(cmdGtmCtl), MAXLINE, "gtm_ctl stop -Z gtm -D %s", + sval(VAR_gtmMasterDir), sval(VAR_gtmMasterDir)); return(cmdGtmCtl); } @@ -1038,13 +1053,14 @@ cmd_t *prepare_initGtmProxy(char *nodeName) /* Build directory and run initgtm */ cmdInitGtm = initCmd(aval(VAR_gtmProxyServers)[idx]); snprintf(newCommand(cmdInitGtm), MAXLINE, - "gtm_ctl -D %s -m immediate -Z gtm_proxy stop;" + "[ -f %s/gtm_proxy.pid ] && gtm_ctl -D %s -m immediate -Z gtm_proxy stop;" "rm -rf %s;" "mkdir -p %s;" "initgtm -Z gtm_proxy -D %s", aval(VAR_gtmProxyDirs)[idx], aval(VAR_gtmProxyDirs)[idx], aval(VAR_gtmProxyDirs)[idx], + aval(VAR_gtmProxyDirs)[idx], aval(VAR_gtmProxyDirs)[idx]); /* Configure gtm_proxy.conf */ @@ -1146,9 +1162,10 @@ cmd_t *prepare_startGtmProxy(char *nodeName) } cmd = initCmd(aval(VAR_gtmProxyServers)[idx]); snprintf(newCommand(cmd), MAXLINE, - "gtm_ctl -D %s -m immediate -Z gtm_proxy stop;" + "[ -f %s/gtm_proxy.pid ] && gtm_ctl -D %s -m immediate -Z gtm_proxy stop;" "gtm_ctl start -Z gtm_proxy -D %s", aval(VAR_gtmProxyDirs)[idx], + aval(VAR_gtmProxyDirs)[idx], aval(VAR_gtmProxyDirs)[idx]); return(cmd); } |