Browse Source
MDEV-23399 fixup: Avoid crash on Mariabackup shutdown
MDEV-23399 fixup: Avoid crash on Mariabackup shutdown
innodb_preshutdown(): Terminate the encryption threads before the page cleaner thread can be shut down. innodb_shutdown(): Always wait for the encryption threads and page cleaner to shut down. srv_shutdown_all_bg_threads(): Wait for the encryption threads and the page cleaner to shut down. (After an aborted startup, innodb_shutdown() would not be called.) row_get_background_drop_list_len_low(): Remove. os_thread_count: Remove. Alternatively, at the end of srv_shutdown_all_bg_threads() we could try to wait longer for the count to reach 0. On some platforms, an assertion os_thread_count==0 could fail even after a small delay, even though in the core dump all threads would have exited. srv_shutdown_threads(): Renamed from srv_shutdown_all_bg_threads(). Do not wait for the page cleaner to shut down, because the later innodb_shutdown(), which may invoke logs_empty_and_mark_files_at_shutdown(), assumes that it exists.bb-10.5-varun
5 changed files with 32 additions and 62 deletions
-
12extra/mariabackup/xtrabackup.cc
-
3storage/innobase/buf/buf0flu.cc
-
3storage/innobase/include/os0thread.h
-
11storage/innobase/os/os0thread.cc
-
65storage/innobase/srv/srv0start.cc
Write
Preview
Loading…
Cancel
Save
Reference in new issue