summaryrefslogtreecommitdiff
path: root/storage/innobase/include/log0recv.h
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@mariadb.com>2017-07-05 22:09:28 +0300
committerMarko Mäkelä <marko.makela@mariadb.com>2017-07-05 22:09:28 +0300
commit72a2de92a12dd7a1d6b0294bb9aa36411ad60fc3 (patch)
tree3eacbfc81784c2dcedceffa29879447aa0b2d34f /storage/innobase/include/log0recv.h
parentf6633bf058802ad7da8196d01fd19d75c53f7274 (diff)
downloadmariadb-git-72a2de92a12dd7a1d6b0294bb9aa36411ad60fc3.tar.gz
Avoid a hang when InnoDB startup is aborted during redo log apply
buf_flush_page_cleaner_coordinator: In the first loop, use an appropriate termination condition, waiting for !recv_writer_thread_active. logs_empty_and_mark_files_at_shutdown(): Signal recv_sys->flush_start in case the recv_writer_thread was never started, or buf_flush_page_cleaner_coordinator failed to notice its termination. innobase_start_or_create_for_mysql(): Remove a redundant, unreachable condition, and properly release resources when aborting startup due to recv_sys->found_corrupt_log.
Diffstat (limited to 'storage/innobase/include/log0recv.h')
-rw-r--r--storage/innobase/include/log0recv.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/storage/innobase/include/log0recv.h b/storage/innobase/include/log0recv.h
index 744ad79f589..24ad9ae2a30 100644
--- a/storage/innobase/include/log0recv.h
+++ b/storage/innobase/include/log0recv.h
@@ -38,6 +38,9 @@ Created 9/20/1997 Heikki Tuuri
#include <list>
#include <vector>
+/** Is recv_writer_thread active? */
+extern bool recv_writer_thread_active;
+
/** @return whether recovery is currently running. */
#define recv_recovery_is_on() recv_recovery_on