diff options
author | Donald Sharp <sharpd@cumulusnetworks.com> | 2015-07-22 21:35:36 +0200 |
---|---|---|
committer | Donald Sharp <sharpd@cumulusnetworks.com> | 2015-07-22 21:35:36 +0200 |
commit | 71e7cd63d4db9bcc5e107d6fc2dba8624b349e9a (patch) | |
tree | 9f22304c3dd2cfcc7d3293f24752b830d8f06908 /watchquagga | |
parent | Add optional json capability to the "show ip ospf neighbor", "show ip ospf ne... (diff) | |
download | frr-71e7cd63d4db9bcc5e107d6fc2dba8624b349e9a.tar.xz frr-71e7cd63d4db9bcc5e107d6fc2dba8624b349e9a.zip |
watchquagga-mode-3-fix.patch
Watchquagga: In phased restart with zebra, invoke restart all when zebra dies
To correctly handle starting and stopping of individual daemons not affecting
watchquagga's monitoring, we resorted to fixing up watchquagga's daemon watch
list every time a daemon was started or stopped. This was done by restarting
watchquagga itself. This meant the handling of phased restart of individual
daemons was broken in watchquagga as it attempted to stop daemons individually
before starting them all individually. Fix this by restarting all when this
happens. This does make mode 4 indistinguishable from mode 1, but I don't
understood the point of mode 4 and we don't think users change watchquagga
modes.
Signed-off-by: Dinesh G Dutt <ddutt@cumulusnetworks.com>
Diffstat (limited to 'watchquagga')
-rw-r--r-- | watchquagga/watchquagga.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/watchquagga/watchquagga.c b/watchquagga/watchquagga.c index ca05361c1..0b48708b7 100644 --- a/watchquagga/watchquagga.c +++ b/watchquagga/watchquagga.c @@ -912,14 +912,7 @@ try_restart(struct daemon *dmn) break; } } - zlog_info("Phased restart: stopping all routing daemons."); - /* First step: stop all other daemons. */ - for (dmn = gs.daemons; dmn; dmn = dmn->next) - { - if (dmn != gs.special) - run_job(&dmn->restart,"stop",gs.stop_command,1,1); - } - set_phase(PHASE_STOPS_PENDING); + run_job(&gs.restart,"restart",gs.restart_command,0,1); break; default: zlog_err("error: unknown restart mode %d",gs.mode); |