diff --git a/Documentation/Release-Notes/MaxScale-2.1.13-Release-Notes.md b/Documentation/Release-Notes/MaxScale-2.1.13-Release-Notes.md index a6e6acd1b..24a144e33 100644 --- a/Documentation/Release-Notes/MaxScale-2.1.13-Release-Notes.md +++ b/Documentation/Release-Notes/MaxScale-2.1.13-Release-Notes.md @@ -1,4 +1,4 @@ -# MariaDB MaxScale 2.1.13 Release Notes +# MariaDB MaxScale 2.1.13 Release Notes -- 2017-01-05 Release 2.1.13 is a GA release. diff --git a/maxscale-system-test/testconnections.cpp b/maxscale-system-test/testconnections.cpp index e94bbdb89..6aa350b4a 100644 --- a/maxscale-system-test/testconnections.cpp +++ b/maxscale-system-test/testconnections.cpp @@ -316,7 +316,7 @@ TestConnections::~TestConnections() copy_all_logs(); -/* Temporary commnted out due to Galera failure in case of revert + /* Temporary disable snapshot revert due to Galera failures if (global_result != 0 ) { if (no_vm_revert) @@ -328,7 +328,8 @@ TestConnections::~TestConnections() tprintf("Reverting snapshot\n"); revert_snapshot((char*) "clean"); } - }*/ + } + */ delete repl; if (!no_galera) diff --git a/server/core/log_manager.cc b/server/core/log_manager.cc index 45ae89d9c..91aa4dd1b 100644 --- a/server/core/log_manager.cc +++ b/server/core/log_manager.cc @@ -2316,7 +2316,9 @@ static void* thr_filewriter_fun(void* data) /** Inform log manager about the state. */ skygw_message_send(fwr->fwr_clientmes); - while (!skygw_thread_must_exit(thr)) + bool running = true; + + do { /** * Wait until new log arrival message appears. @@ -2342,14 +2344,23 @@ static void* thr_filewriter_fun(void* data) } } + bool send_message = false; + if (flushall_done_flag) { flushall_done_flag = false; flushall_logfiles(false); - skygw_message_send(fwr->fwr_clientmes); + send_message = true; } - } /* while (!skygw_thread_must_exit) */ + running = !skygw_thread_must_exit(thr); + + if (running && send_message) + { + skygw_message_send(fwr->fwr_clientmes); + } + } + while (running); ss_debug(skygw_thread_set_state(thr, THR_STOPPED)); /** Inform log manager that file writer thread has stopped. */ diff --git a/server/core/skygw_utils.cc b/server/core/skygw_utils.cc index 4292e2dd3..d5aef14f8 100644 --- a/server/core/skygw_utils.cc +++ b/server/core/skygw_utils.cc @@ -318,7 +318,9 @@ bool skygw_thread_set_exitflag(skygw_thread_t* thr, skygw_message_t* sendmes, skygw_message_wait(recmes); } + ss_dassert(simple_mutex_lock(thr->sth_mutex, true) == 0); ss_dassert(thr->sth_state == THR_STOPPED); + ss_dassert(simple_mutex_unlock(thr->sth_mutex) == 0); return_succp: return succp; diff --git a/server/core/test/test_log.cc b/server/core/test/test_log.cc index 41a1d4a43..e9eacf826 100644 --- a/server/core/test/test_log.cc +++ b/server/core/test/test_log.cc @@ -221,8 +221,6 @@ int main(int argc, char* argv[]) err = MXS_NOTICE("%s", logstr); ss_dassert(err == 0); - succp = mxs_log_init(NULL, "/tmp", MXS_LOG_TARGET_FS); - ss_dassert(succp); skygw_log_enable(LOG_INFO); logstr = ("6.\tWrite to ERROR and thus also to MESSAGE and TRACE logs."); err = MXS_ERROR("%s", logstr);