• Marko Mäkelä's avatar
    MDEV-13318 Crash recovery failure after the server is killed during innodb_encrypt_log startup · 66a09bd6
    Marko Mäkelä authored
    This fixes several InnoDB bugs related to innodb_encrypt_log and
    two Mariabackup --backup bugs.
    
    log_crypt(): Properly derive the initialization vector from the
    start LSN of each block. Add a debug assertion.
    
    log_crypt_init(): Note that the function should only be used when
    creating redo log files and that the information is persisted in
    the checkpoint pages.
    
    xtrabackup_copy_log(): Validate data_len.
    
    xtrabackup_backup_func(): Always use the chosen checkpoint buffer.
    
    log_group_write_buf(), log_write_up_to(): Only log_crypt() the redo
    log payload, not the padding bytes.
    
    innobase_start_or_create_for_mysql(): Do not invoke log_crypt_init()
    or initiate a redo log checkpoint.
    
    recv_find_max_checkpoint(): Return the contents of LOG_CHECKPOINT_NO
    to xtrabackup_backup_func() in log_sys->next_checkpoint_no.
    66a09bd6
srv0start.cc 80 KB