• marko's avatar
    branches/zip: Fix some BLOB handling bugs. · ac5b886f
    marko authored
    btr_store_big_rec_extern_fields(): Assert that page_zip is non-NULL
    if and only if dict_table_is_zip() holds.
    
    btr_free_externally_stored_field(): Observe dict_table_is_zip().
    Allow page_zip==NULL even if dict_table_is_zip().  Remove the
    related TODO comment in row_purge_upd_exist_or_extern().
    
    page_zip_available(): uncompressed_size already includes
    PAGE_ZIP_DIR_SLOT_SIZE.
    
    page_zip_decompress(): Remove bogus assertion d_stream.next_out == last.
    Do not subtract BTR_EXTERN_FIELD_REF_SIZE from d_stream.avail_in when
    decompressing records, because the records may be deleted later in
    page_zip_apply_log(), and no BLOB pointers are allocated for deleted
    records.
    ac5b886f
btr0cur.c 110 KB