innodb.result, innodb.test: Revert the changes in r2145.
The tests that were removed by MySQL
ChangeSet@1.2598.2.6 2007-11-06 15:42:58-07:00 tsmith@hindu.god
were moved to a new test, innodb_autoinc_lock_mode_zero, which is
kept in the MySQL BitKeeper tree.
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.
innodb.test: The error code 1540 has been renumbered to 1542.
innodb.result: Adjust the expected value of Innodb_buffer_pool_pages_total.
Something may have changed in the BLOB handling in branches/zip.
ha_innodb.cc: Add ha_innobase:: prefix to some DBUG_ENTER macros.
row_merge_create_temporary_table(): Free the heap only after invoking
row_create_table_for_mysql(). The table->col_names points to the heap
until the system columns are added by row_create_table_for_mysql().
TODO: use the filename-safe encoding in temporary table names. Test
extensively under Valgrind and fix all errors found. Eliminate
merge_rec_t and rewrite row0merge.c to write the records directly to
the merge blocks.