• Marko Mäkelä's avatar
    MDEV-23399 fixup: Avoid crash on Mariabackup shutdown · 5999d512
    Marko Mäkelä authored
    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.
    5999d512
srv0start.cc 58.7 KB