summaryrefslogtreecommitdiffstats
path: root/filedistribution
diff options
context:
space:
mode:
Diffstat (limited to 'filedistribution')
-rw-r--r--filedistribution/src/vespa/filedistribution/model/zkfacade.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/filedistribution/src/vespa/filedistribution/model/zkfacade.cpp b/filedistribution/src/vespa/filedistribution/model/zkfacade.cpp
index 34705729703..96d80218cff 100644
--- a/filedistribution/src/vespa/filedistribution/model/zkfacade.cpp
+++ b/filedistribution/src/vespa/filedistribution/model/zkfacade.cpp
@@ -290,7 +290,12 @@ ZKFacade::invokeWatcher(void* watcherContext) {
return;
if (watcher) {
- (*watcher->_nodeChangedWatcher)();
+ try {
+ (*watcher->_nodeChangedWatcher)();
+ } catch (const ZKConnectionLossException & e) {
+ LOGFWD(error, "Got connection loss exception while invoking watcher : %s", e.what());
+ std::quick_exit(12);
+ }
} else {
LOGFWD(error, "Invoke called on expired watcher.");
}