- 16 Aug, 2007 3 commits
-
-
marko authored
ha_innobase::add_index(), ha_innobase::prepare_drop_index(): Remove the redundant thd_test_options() calls. The options are tested in check_trx_exists(). ha_innobase::prepare_drop_index(): key cannot be NULL; remove the tests. Move the condition for checking foreign keys outside of the loop. Remove the redundant error log printout about foreign key dependency.
-
marko authored
of ut_strcmp() from const void* to const char*.
-
marko authored
Remove the unused constant DICT_NOT_READY. Make dict_index_t::type a bit-field, and move it next to other bit-fields. Add a const qualifier to dict_index_t::name.
-
- 15 Aug, 2007 4 commits
-
-
marko authored
It was only set by ha_innobase::prepare_drop_index(), which can return the appropriate MySQL error code (HA_ERR_DROP_INDEX_FK) directly. ha_innobase::add_index(): Correct the function comment. ha_innobase::prepare_drop_index(): Correct the function comment. Return MySQL error codes directly. ha_innobase::final_drop_index(): Correct the function comment.
-
marko authored
switch-case.
-
marko authored
row_merge_buf_add(): Add a prefetch instruction to row->fields. Eliminate a variable from the copying loop, and move the termination condition to the end of the loop. row_merge_build_indexes(): Remove the second call to trx_start_if_not_started().
-
marko authored
trx_t: Change the type of error_info from void* to const dict_index_t*. trx_get_error_info(): Add const qualifier to trx_t*. Make this an inline function.
-
- 13 Aug, 2007 8 commits
-
-
marko authored
(merging branches/fast-index-creation): row_truncate_table_for_mysql(), row_drop_table_for_mysql_no_commit(): Let ut_print_name() output to ef instead of stderr.
-
marko authored
key name "PRIMARY". If the table has a generated clustered index, also check for a UNIQUE INDEX containing no NULL columns. innobase_create_index_def(): Add the parameter key_primary. innobase_create_key_def(): Check if the first index is a UNIQUE index consisting of NOT NULL columns. Fixing this bug revealed another one: FOREIGN KEY constraints will be lost when a PRIMARY KEY is created. This is the reason why innodb.test will fail.
-
marko authored
when the index could not be found.
-
marko authored
innobase_create_key_def(), row_table_got_default_clust_index(), row_get_mysql_key_number_for_index(): Add a const qualifier. dict_table_get_first_index(), dict_table_get_next_index(): Define as a const-preserving macro. Preserve the old function for UNIV_DEBUG, but add a const qualifier to the parameter and cast away the constness.
-
marko authored
row_ext_create(): After a memset() inside UNIV_DEBUG, flag the memory uninitialized with UNIV_MEM_ALLOC().
-
marko authored
and simplify error handling.
-
marko authored
-
marko authored
was broken in r1685.
-
- 10 Aug, 2007 3 commits
-
-
marko authored
innodb-index.test, innodb-index.result: Add a test for creating a PRIMARY KEY on a column that contains a NULL value.
-
marko authored
row_merge_create_temporary_table(): Add the parameter index_defs. DB_PRIMARY_KEY_IS_NULL: New error code, mapped to ER_PRIMARY_CANT_HAVE_NULL. row_merge_read_clustered_index(): Replace the parameter "table" with the two parameters "old_table" and "new_table". Detect NULL values of columns that are supposed to be NOT NULL. row_merge_col_prtype(): New auxiliary function, used by row_merge_create_temporary_table() to flag NOT NULL any columns contained in an added PRIMARY KEY.
-
marko authored
innobase_copy_index_field_def(): Remove parameter heap. The field->name will not be deallocated before the copied index has been added to the data dictionary cache. innobase_copy_index_def(): Add const qualifier to dict_index_t*. Add an assertion !dict_index_is_clust(index). ha_innobase::add_index(): Add the missing user_thd parameter to the convert_error_code_to_mysql() call that was forgotten from r1686. merge_index_field_struct: Add const qualifier to field_name. merge_index_def_struct: Add const qualifier to name. row_merge_build_indexes(): Improve the function comment. row_merge_drop_table(): Remove bogus assertion ut_a(table->to_be_dropped).
-
- 08 Aug, 2007 6 commits
-
-
marko authored
goto err_exit. The error handling should be rewritten. Many of the error messages contain parameters, but this code is only returning the error number to MySQL.
-
marko authored
as documented. Do not translate the error code. This function is still broken; we should probably use my_error() for reporting errors.
-
marko authored
-
marko authored
The code for DB_CANNOT_DROP_FOREIGN_INDEX should have been renumbered in r1494 (Merge revisions 1402:1493 from trunk).
-
marko authored
-
marko authored
-
- 03 Aug, 2007 6 commits
-
-
marko authored
row_merge_buf_create_low(): Swap the parameters max_tuples and buf_size, because the callers had them swapped. Add debug assertions about these parameters. row_merge_buf_empty(): Return the emptied buffer. In some cases, the buffer may be relocated.
-
marko authored
do not release and relock the data dictionary during initial preparations.
-
marko authored
the index may be NULL when unfinished transactions are rolled back after crash recovery.
-
marko authored
before calling trx_lists_init_at_db_start(). This was broken in r1594.
-
marko authored
-
marko authored
row_mysql_read_true_varchar(), row_mysql_read_blob_ref(), row_mysql_store_col_in_innobase_format(), row_sel_convert_mysql_key_to_innobase(): Add const qualifiers. row_sel_convert_mysql_key_to_innobase(): Document that the first parameter is in/out.
-
- 02 Aug, 2007 2 commits
-
-
marko authored
the data dictionary locked across the operations. dict_table_decrement_handle_count(), row_prebuilt_free(): Add the flag dict_locked, to prevent the acquisition of dict_sys->mutex. innobase_rename_table(): Rename commit_flag to lock_and_commit, and do not acquire dict_sys->mutex or flush the log unless the flag is set. Remove bogus comment about utility threads, because the threads will be waken up by the upper-level function ha_innobase::rename_table(). ha_innobase::add_index(): After creating a primary key, hold dict_sys->mutex across all dictionary operations.
-
marko authored
-
- 01 Aug, 2007 8 commits
-
-
marko authored
symbolic ones.
-
marko authored
does not declare it unless MYSQL_SERVER is defined.
-
marko authored
-
marko authored
error code. Apparently, the numeric error codes in MySQL 5.1 are changing.
-
marko authored
implicit type conversion from void*. Inlining is enabled in ha_innodb.cc since r1587.
-
marko authored
C++ requires explicit type casts when converting from void*, and *.ic files are now inlined in ha_innodb.cc. fil_space_get_by_id(), fil_space_get_by_name(): New inline functions, to replace occurrences of the HASH_SEARCH() macro in fil0fil.c. This should improve readability.
-
marko authored
-
marko authored
This was broken in r1591.
-