• Kristian Nielsen's avatar
    MDEV-8147: Assertion `m_lock_type == 2' failed in handler::ha_close() during parallel replication · e5f1e841
    Kristian Nielsen authored
    When the slave processes the master restart format_description event,
    parallel replication needs to complete any prior events before processing
    the restart event (which closes temporary tables and such stuff).
    
    This happens in wait_for_workers_idle(), however it was not waiting long
    enough. The wait was using wait_for_prior_commit(), but at that points table
    can still be open. This lead to assertion in this case.
    
    So change wait_for_workers_idle() to wait until all worker threads have
    reached finish_event_group(), at which point all tables should have been
    closed.
    e5f1e841
rpl_parallel.h 11.4 KB