• He Zhenxing's avatar
    bug#49536 - deadlock on rotate_and_purge when using expire_logs_days · cbcd6f41
    He Zhenxing authored
    Problem is that purge_logs implementation in ndb (ndbcluster_binlog_index_purge_file)
    calls mysql_parse (with (thd->options & OPTION_BIN_LOG) === 0)) 
    but MYSQL_BIN_LOG first takes LOCK_log and then checks thd->options
    
    Solution in this patch, changes so that rotate_and_purge does not hold
    LOCK_log when calling purge_logs_before_date. I think this is safe
    as other "purge"-function(s) is called wo/ holding LOCK_log, e.g purge_master_logs
    cbcd6f41
log.cc 167 KB