summaryrefslogtreecommitdiff
path: root/cmd-line-utils
diff options
context:
space:
mode:
authorMarko Mäkelä <marko.makela@oracle.com>2011-10-12 09:00:49 +0300
committerMarko Mäkelä <marko.makela@oracle.com>2011-10-12 09:00:49 +0300
commit41b97529d021957d5f51f77a402a2739dc5b428c (patch)
tree1ef0f83c0171c603f5016d3111b4f4333b8f6a17 /cmd-line-utils
parentc6120de68f6d0d6a79ffeb5fef6efa394dc5184c (diff)
downloadmariadb-git-41b97529d021957d5f51f77a402a2739dc5b428c.tar.gz
Bug#13006367 62487: innodb takes 3 minutes to clean up the adaptive
hash index at shutdown btr_search_disable(): Just drop the entire adaptive hash index, without dropping every record separately. buf_pool_clear_hash_index(): Renamed and simplified from buf_pool_drop_hash_index(). Set block->index = NULL for every block in the buffer pool. Do not release the btr_search_latch. The caller will have to adjust other data structures. Remove block->is_hashed. It is redundant, should be always equal to block->index != NULL. Remove btr_search_fully_disabled, btr_search_enabled_mutex, and SYNC_SEARCH_SYS_CONF. We drop the AHI in one pass, without releasing the btr_search_latch in between. Replace void* with const rec_t* and add assertions on btr_search_latch and btr_search_enabled to ha0ha.h, ha0ha.ic, ha0ha.c. page_set_max_trx_id(): Ignore the adaptive hash index. I forgot to push this in rb:750. btr0sea.c: Always after acquiring btr_search_latch, check for block->index==NULL or !btr_search_enabled. We can now set block->index=NULL while only holding btr_search_latch in exclusive mode. Always acquire btr_search_latch before reading block->index, except in shortcuts when testing for block->index == NULL. ha_clear(), ha_search(): Unused function, remove. buf_page_peek_if_search_hashed(): Remove. This function may avoid latching a page at the cost of doing a duplicate buf_pool->page_hash lookup. rb:775 approved by Inaam Rana
Diffstat (limited to 'cmd-line-utils')
0 files changed, 0 insertions, 0 deletions