• Marko Mäkelä's avatar
    Fix online table-rebuilding ALTER on tables after instant ADD COLUMN · 58ac1718
    Marko Mäkelä authored
    In the temporary file that is applied by row_log_table_apply(),
    we must identify whether the records contain the extra header for
    instantly added columns. For now, we will allocate an additional byte
    for this for ROW_T_INSERT and ROW_T_UPDATE records when the source table
    has been subject to instant ADD COLUMN. The ROW_T_DELETE records are
    fine, as they will be converted and will only contain 'core' columns
    (PRIMARY KEY and some system columns) that are converted from dtuple_t.
    
    rec_get_converted_size_temp(), rec_init_offsets_temp(),
    rec_convert_dtuple_to_temp(): Add the parameter 'status'.
    
    rec_set_n_add_field(): Simplify the interface to resemble
    rec_get_n_add_field().
    
    rec_init_offsets_comp_ordinary(): Handle the new rec_leaf_format
    constant REC_LEAF_TEMP_COLUMNS_ADDED.
    
    rec_get_converted_size_comp_prefix_low(),
    rec_convert_dtuple_to_rec_comp(): Handle
    index->is_instant() for both temp and !temp.
    58ac1718
rem0rec.cc 72.8 KB