mariadb/handler
marko 2f7bcc7d99 branches/zip: In hash table lookups, assert that the traversed items
satisfy some conditions when UNIV_DEBUG is defined.

HASH_SEARCH(): New parameter: ASSERTION. All users will pass an appropriate
ut_ad() or nothing.

dict_table_add_to_columns(): Assert that the table being added to the data
dictionary cache is not already being pointed to by the name_hash and
id_hash tables.

HASH_SEARCH_ALL(): New macro, for use in dict_table_add_to_columns().

dict_mem_table_free(): Set ut_d(table->cached = FALSE), so that we can
check ut_ad(table->cached) when traversing the hash tables, as in
HASH_SEARCH(name_hash, dict_sys->table_hash, ...) and
HASH_SEARCH(id_hash, dict_sys->table_id_hash, ...).

dict_table_get_low(), dict_table_get_on_id_low(): Assert
ut_ad(!table || table->cached).

fil_space_get_by_id(): Check ut_ad(space->magic_n == FIL_SPACE_MAGIC_N)
in HASH_SEARCH(hash, fil_system->spaces, ...).

fil_space_get_by_name(): Check ut_ad(space->magic_n == FIL_SPACE_MAGIC_N)
in HASH_SEARCH(name_hash, fil_system->name_hash, ...).

buf_buddy_block_free(): Check that the blocks are in valid state in
HASH_SEARCH(hash, buf_pool->zip_hash, ...).

buf_page_hash_get(): Check that the blocks are in valid state in
HASH_SEARCH(hash, buf_pool->page_hash, ...).

get_share(), free_share(): Check ut_ad(share->use_count > 0) in
HASH_SEARCH(table_name_hash, innobase_open_tables, ...).

This was posted as rb://75 for tracking down errors similar to Issue #153.
2009-01-13 19:46:22 +00:00
..
ha_innodb.cc branches/zip: In hash table lookups, assert that the traversed items 2009-01-13 19:46:22 +00:00
ha_innodb.h branches/zip: Do not call trx_allocate_for_mysql() directly, but use 2009-01-07 14:22:18 +00:00
handler0alter.cc branches/zip: Do not call trx_allocate_for_mysql() directly, but use 2009-01-07 14:22:18 +00:00
handler0vars.h branches/zip: windows plugin - fix references to array variables. 2008-11-04 10:43:14 +00:00
i_s.cc branches/zip: implement the delayloading of externals for the plugin 2008-10-27 20:48:29 +00:00
i_s.h branches/zip: Rename the compression-related INFORMATION_SCHEMA tables 2008-03-28 10:31:24 +00:00
mysql_addons.cc branches/zip: 2008-12-04 16:49:24 +00:00
win_delay_loader.cc branches/zip: In hash table lookups, assert that the traversed items 2009-01-13 19:46:22 +00:00