• marko's avatar
    branches/zip: Reimplement merge sort in fast index creation. · 1a8a63d0
    marko authored
    The creation of the primary key does not work.  We will have to flag
    externally stored columns and copy the externally stored part from
    the old table.
    
    row_build_index_for_mysql(): Rename to row_merge_build_indexes().
    Move from row0mysql.c to row0merge.c.
    
    Remove private declarations from row0merge.h.  Make many functions static
    in row0merge.c.
    
    cmp_rec_rec_simple(): A new comparison function.
    
    dict_index_get_min_size(): New function.
    
    OS_FILE_FROM_FD(fd): A macro for converting from int to os_file_t.
    
    rec_convert_dtuple_to_rec_comp(): Make the interface lower-level.
    
    rec_get_converted_size_comp(): Return also extra_size.
    
    UT_SORT_FUNCTION_BODY(): Remove reference to an obsolete test program.
    
    row_rec_to_index_entry_low(): New function.
    
    row0merge.c: Implement merge sort based on file streams instead of
    fixed-size blocks.  Sort the small blocks as arrays of dfield_t*,
    because it is faster than invoking rec_get_offsets() for every
    comparison.
    1a8a63d0
ut0sort.h 2.57 KB