• marko's avatar
    branches/zip: Note that TRX_ID and ROLL_PTR only exist on B-tree leaf pages · e8e9fb28
    marko authored
    of clustered indexes.  Previously, parts of the code assumed that these
    columns would exist on all leaf pages.  Simplify the update-in-place of
    these columns.
    
    Add inline function dict_index_is_clust() to replace all tests
    index->type & DICT_CLUSTERED.
    
    Remove the redo log entry types MLOG_ZIP_WRITE_TRX_ID and
    MLOG_ZIP_WRITE_ROLL_PTR, because the modifications to these columns
    are covered by logical logging.
    
    Fuse page_zip_write_trx_id() and page_zip_write_roll_ptr() into
    page_zip_write_trx_id_and_roll_ptr().
    
    page_zip_dir_add_slot(), page_zip_available(): Add flag "is_clustered",
    so that no space will be reserved for TRX_ID and ROLL_PTR on leaf pages
    of secondary indexes.
    
    page_zip_apply_log(): Flag an error when val==0 is encoded with two bytes.
    
    page_zip_write_rec(): Add debug assertions that there is enough space
    available for the entry before copying the data bytes of the record.
    e8e9fb28
page0types.h 4.19 KB