• Sujatha Sivakumar's avatar
    Bug#17327454:SEMI-SYNC REPLICATION MASTER CRASH WHEN SET · cc4043f0
    Sujatha Sivakumar authored
    RPL_SEMI_SYNC_MASTER_ENABLED OFF.
    
    Problem:
    =======
    If master is waiting for a reply from slave, at this time
    set global rpl_semi_sync_master_enabled=OFF, the master
    server will crash.
    
    Analysis:
    ========
    When master is waiting for a reply from slave, at this time
    if semi sync is switched off on master, during switch off if
    active transactions are present the transactions will be
    cleared and "active_tranxs_" variable will be set to NULL.
    
    When the waiting master connection finds that semi sync is
    switched of it tries to access "active_tranxs_" without
    checking if the transaction list exists or not. Accessing
    NULL transaction list causes the crash.
    
    Fix:
    ===
    A check has been added to see a valid list exists before
    accessing the "active_tranxs_".
    
    plugin/semisync/semisync_master.cc:
      Added check for the existence of valid 'active_transx_'.
    cc4043f0
semisync_master.cc 35.2 KB