• Marko Mäkelä's avatar
    Bug#24444831 MY_ERROR(ER_INNODB_ONLINE_LOG_TOO_BIG) CALLED WITH INVALID INDEX NAME · 93078c9c
    Marko Mäkelä authored
    This bug was introduced in MySQL 5.6.8 with WL#6255.
    When an error occurs while rebuilding a table that only has a
    hidden GEN_CLUST_INDEX inside InnoDB, ha_alter_info->key_info_buffer
    would be invalid and should not be dereferenced.
    
    get_error_key_name(): Get the name of an erroneous key.
    Avoid dereferencing ha_alter_info->key_info_buffer when no keys
    exist in the SQL layer.
    
    ha_innobase::inplace_alter_table(),
    ha_innobase::commit_try_rebuild(): Invoke get_error_key_name()
    for reporting ER_INNODB_ONLINE_LOG_TOO_BIG or ER_INDEX_CORRUPT.
    
    RB: 13834
    Reviewed-by: default avatarJimmy Yang <jimmy.yang@oracle.com>
    93078c9c
handler0alter.cc 258 KB