From d2543c48416ce918c1c14d10df5557834cc01fe6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Markus=20M=C3=A4kel=C3=A4?= Date: Fri, 4 Aug 2017 14:00:06 +0300 Subject: [PATCH] Fix refactoring errors The monitor deletion would mistakenly label all monitors as not being created at runtime. Due to this, the deletion of monitors would fail. --- server/core/config_runtime.cc | 16 +++------------- server/core/resource.cc | 2 ++ 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/server/core/config_runtime.cc b/server/core/config_runtime.cc index 8e3aea3d4..f807fa4c9 100644 --- a/server/core/config_runtime.cc +++ b/server/core/config_runtime.cc @@ -884,20 +884,10 @@ bool runtime_destroy_monitor(MXS_MONITOR *monitor) spinlock_acquire(&crt_lock); - if (unlink(filename) == -1) + if (unlink(filename) == -1 && errno != ENOENT) { - if (errno != ENOENT) - { - MXS_ERROR("Failed to remove persisted monitor configuration '%s': %d, %s", - filename, errno, mxs_strerror(errno)); - } - else - { - rval = false; - MXS_WARNING("Monitor '%s' was not created at runtime. Remove the " - "monitor manually from the correct configuration file.", - monitor->name); - } + MXS_ERROR("Failed to remove persisted monitor configuration '%s': %d, %s", + filename, errno, mxs_strerror(errno)); } else { diff --git a/server/core/resource.cc b/server/core/resource.cc index c48395d2a..dbf679b48 100644 --- a/server/core/resource.cc +++ b/server/core/resource.cc @@ -332,6 +332,7 @@ HttpResponse cb_alter_logs(const HttpRequest& request) HttpResponse cb_delete_server(const HttpRequest& request) { SERVER* server = server_find_by_unique_name(request.uri_part(1).c_str()); + ss_dassert(server); if (server && runtime_destroy_server(server)) { @@ -344,6 +345,7 @@ HttpResponse cb_delete_server(const HttpRequest& request) HttpResponse cb_delete_monitor(const HttpRequest& request) { MXS_MONITOR* monitor = monitor_find(request.uri_part(1).c_str()); + ss_dassert(monitor); if (monitor && runtime_destroy_monitor(monitor)) {