• Sujatha's avatar
    MDEV-22451: SIGSEGV in __memmove_avx_unaligned_erms/memcpy from _my_b_write on... · 836d7089
    Sujatha authored
    MDEV-22451: SIGSEGV in __memmove_avx_unaligned_erms/memcpy from _my_b_write on CREATE after RESET MASTER
    
    Analysis:
    ========
    RESET MASTER TO # command deletes all binary log files listed in the index
    file, resets the binary log index file to be empty, and creates a new binary
    log with number #. When the user provided binary log number is greater than
    the max allowed value '2147483647' server fails to generate a new binary log.
    The RESET MASTER statement marks the binlog closure status as
    'LOG_CLOSE_TO_BE_OPENED' and exits. Statements which follow RESET MASTER
    try to write to binary log they find the log_state != LOG_CLOSED and
    proceed to write to binary log cache and it results in crash.
    
    Fix:
    ===
    During MYSQL_BIN_LOG open, if generation of new binary log name fails then the
    "log_state" needs to be marked as "LOG_CLOSED". With this further statements
    will find binary log as closed and they will skip writing to the binary log.
    836d7089
rpl_binlog_errors.inc 13 KB