Commit 05392a9d authored by marko's avatar marko

Port r53 from branches/5.0:

Make comments about buf_block_t::index more accurate.
parent 96cccd15
...@@ -889,7 +889,8 @@ Drops a page hash index. */ ...@@ -889,7 +889,8 @@ Drops a page hash index. */
void void
btr_search_drop_page_hash_index( btr_search_drop_page_hash_index(
/*============================*/ /*============================*/
page_t* page) /* in: index page, s- or x-latched */ page_t* page) /* in: index page, s- or x-latched, or an index page
for which we know that block->buf_fix_count == 0 */
{ {
hash_table_t* table; hash_table_t* table;
buf_block_t* block; buf_block_t* block;
......
...@@ -831,7 +831,13 @@ struct buf_block_struct{ ...@@ -831,7 +831,13 @@ struct buf_block_struct{
records with the same prefix should be records with the same prefix should be
indexed in the hash index */ indexed in the hash index */
/* The following 6 fields are protected by btr_search_latch: */ /* These 6 fields may only be modified when we have
an x-latch on btr_search_latch AND
a) we are holding an s-latch or x-latch on block->lock or
b) we know that block->buf_fix_count == 0.
An exception to this is when we init or create a page
in the buffer pool in buf0buf.c. */
ibool is_hashed; /* TRUE if hash index has already been ibool is_hashed; /* TRUE if hash index has already been
built on this page; note that it does built on this page; note that it does
...@@ -849,11 +855,7 @@ struct buf_block_struct{ ...@@ -849,11 +855,7 @@ struct buf_block_struct{
BTR_SEARCH_RIGHT_SIDE in hash BTR_SEARCH_RIGHT_SIDE in hash
indexing */ indexing */
dict_index_t* index; /* Index for which the adaptive dict_index_t* index; /* Index for which the adaptive
hash index has been created. hash index has been created. */
This field may only be modified
while holding an s-latch or x-latch
on block->lock and an x-latch on
btr_search_latch. */
/* 6. Debug fields */ /* 6. Debug fields */
#ifdef UNIV_SYNC_DEBUG #ifdef UNIV_SYNC_DEBUG
rw_lock_t debug_latch; /* in the debug version, each thread rw_lock_t debug_latch; /* in the debug version, each thread
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment