• Venkatesh Duggirala's avatar
    Bug#15948818-SEMI-SYNC ENABLED MASTER CRASHES WHEN EVENT · 00b840b4
    Venkatesh Duggirala authored
    SCHEDULER DROPS EVENTS
    
    Problem: On a semi sync enabled server (Master/Slave),
    if event scheduler drops an event after completion,
    server crashes.
    
    Analaysis: If an event is created with "ON COMPLETION
    NOT PRESERVE" clause, event scheduler deletes the event
    upon event completion(expiration) and the thread object
    will be destroyed. In the destructor of the thread object,
    mysys_var member is set to zero explicitly. Later from
    the same destructor call(same execution path),
    incase of semi sync enabled server, while cleanup is called,
    THD::mysys_var member is accessed by THD::enter_cond()
    function which causes server to crash.
    
    Fix: mysys_var should not be explicitly set to zero and
    also it is not required.
    
    sql/sql_class.cc:
      mysys_var should not be explicitly set to zero.
    00b840b4
sql_class.cc 149 KB