• Jan Lindström's avatar
    MDEV-17230: encryption_key_id from alter is ignored by encryption threads · ef400185
    Jan Lindström authored
    Background: Used encryption key_id is stored to encryption metadata
    i.e. crypt_data that is stored on page 0 of the tablespace of the
    table. crypt_data is created only if implicit encryption/not encryption
    is requested i.e. ENCRYPTED=[YES|NO] table option is used
    fil_create_new_single_table_tablespace on fil0fil.cc.
    
    Later if encryption is enabled all tables that use default encryption
    mode (i.e. no encryption table option is set) are encrypted with
    default encryption key_id that is 1. See fil_crypt_start_encrypting_space on
    fil0crypt.cc.
    
    ha_innobase::check_table_options()
    	If default encryption is used and encryption is disabled, you may
            not use nondefault encryption_key_id as it is not stored anywhere.
    ef400185
ha_innodb.cc 650 KB