diff options
| -rwxr-xr-x | ctdb/config/events.d/10.interface | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/ctdb/config/events.d/10.interface b/ctdb/config/events.d/10.interface index dd54f1e395..80b136856b 100755 --- a/ctdb/config/events.d/10.interface +++ b/ctdb/config/events.d/10.interface @@ -56,6 +56,10 @@ monitor_interfaces() fail=false up_interfaces_found=false + # Note that this loop must not exit early. It must process + # all interfaces so that the correct state for each interface + # is set in CTDB using mark_up/mark_down. If there is a + # problem with an interface then set fail=true and continue. for iface in $all_interfaces ; do ip addr show $iface 2>/dev/null >/dev/null || { @@ -149,14 +153,7 @@ case "$1" in # called after ctdbd has done its initial recovery # and we start the services to become healthy startup) - # Assume all links are good initially - get_all_interfaces - for iface in $all_interfaces ; do - ctdb setifacelink $iface up >/dev/null 2>/dev/null - done - monitor_interfaces - ;; |
