mirror of
https://github.com/MariaDB/server.git
synced 2026-05-15 19:37:16 +02:00
10.1 additions for MDEV-12052 Shutdown crash presumably due to master thread activity
btr_defragment_thread(): Create the thread in the same place as other threads. Do not invoke btr_defragment_shutdown(), because row_drop_tables_for_mysql_in_background() in the master thread can still keep invoking btr_defragment_remove_table(). logs_empty_and_mark_files_at_shutdown(): Wait for btr_defragment_thread() to exit. innobase_start_or_create_for_mysql(), innobase_shutdown_for_mysql(): Skip encryption and scrubbing in innodb_read_only_mode. srv_export_innodb_status(): Do not export encryption or scrubbing statistics in innodb_read_only mode, because the threads will not be running.
This commit is contained in:
parent
4abc2dd0c7
commit
2f29fc3c1c
10 changed files with 71 additions and 58 deletions
|
|
@ -1,7 +1,7 @@
|
|||
/*****************************************************************************
|
||||
|
||||
Copyright (C) 2013, 2014 Facebook, Inc. All Rights Reserved.
|
||||
Copyright (C) 2014, 2015, MariaDB Corporation.
|
||||
Copyright (C) 2014, 2017, MariaDB Corporation.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify it under
|
||||
the terms of the GNU General Public License as published by the Free Software
|
||||
|
|
@ -89,16 +89,14 @@ UNIV_INTERN
|
|||
void
|
||||
btr_defragment_save_defrag_stats_if_needed(
|
||||
dict_index_t* index); /*!< in: index */
|
||||
/******************************************************************//**
|
||||
Thread that merges consecutive b-tree pages into fewer pages to defragment
|
||||
the index. */
|
||||
|
||||
/** Merge consecutive b-tree pages into fewer pages to defragment indexes */
|
||||
extern "C" UNIV_INTERN
|
||||
os_thread_ret_t
|
||||
DECLARE_THREAD(btr_defragment_thread)(
|
||||
/*==========================================*/
|
||||
void* arg); /*!< in: a dummy parameter required by
|
||||
os_thread_create */
|
||||
DECLARE_THREAD(btr_defragment_thread)(void*);
|
||||
|
||||
/** Whether btr_defragment_thread is active */
|
||||
extern bool btr_defragment_thread_active;
|
||||
|
||||
#endif /* !UNIV_HOTBACKUP */
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue