diff options
Diffstat (limited to 'server-tools/instance-manager/manager.cc')
-rw-r--r-- | server-tools/instance-manager/manager.cc | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/server-tools/instance-manager/manager.cc b/server-tools/instance-manager/manager.cc index 87ad938615f..cf7820d0335 100644 --- a/server-tools/instance-manager/manager.cc +++ b/server-tools/instance-manager/manager.cc @@ -77,8 +77,18 @@ void manager(const Options &options) instance_map.guardian= &guardian_thread; - if (instance_map.init() || user_map.init() || instance_map.load() || - user_map.load(options.password_file_name)) + if (instance_map.init() || user_map.init()) + return; + + if (instance_map.load()) + { + log_error("Cannot init instances repository. This might be caused by " + "the wrong config file options. For instance, missing mysqld " + "binary. Aborting."); + return; + } + + if (user_map.load(options.password_file_name)) return; /* write pid file */ @@ -173,7 +183,7 @@ void manager(const Options &options) { int status= 0; - if (status= my_sigwait(&mask, &signo)) + if ((status= my_sigwait(&mask, &signo)) != 0) { log_error("sigwait() failed"); goto err; |