Commit 29a777d6 authored by marko's avatar marko

branches/innodb+: Remove redundant buf_pool_watch_notify() calls

after buf_page_init().
parent 100b7265
...@@ -2732,7 +2732,6 @@ buf_page_init_for_read( ...@@ -2732,7 +2732,6 @@ buf_page_init_for_read(
mutex_enter(&block->mutex); mutex_enter(&block->mutex);
buf_page_init(space, offset, block); buf_page_init(space, offset, block);
buf_pool_watch_notify(space, offset);
/* The block must be put to the LRU list, to the old blocks */ /* The block must be put to the LRU list, to the old blocks */
buf_LRU_add_block(bpage, TRUE/* to old blocks */); buf_LRU_add_block(bpage, TRUE/* to old blocks */);
...@@ -2909,7 +2908,6 @@ buf_page_create( ...@@ -2909,7 +2908,6 @@ buf_page_create(
mutex_enter(&block->mutex); mutex_enter(&block->mutex);
buf_page_init(space, offset, block); buf_page_init(space, offset, block);
buf_pool_watch_notify(space, offset);
/* The block must be put to the LRU list */ /* The block must be put to the LRU list */
buf_LRU_add_block(&block->page, FALSE); buf_LRU_add_block(&block->page, FALSE);
......
...@@ -3249,14 +3249,6 @@ ibuf_insert_low( ...@@ -3249,14 +3249,6 @@ ibuf_insert_low(
btr_pcur_open(ibuf->index, ibuf_entry, PAGE_CUR_LE, mode, &pcur, &mtr); btr_pcur_open(ibuf->index, ibuf_entry, PAGE_CUR_LE, mode, &pcur, &mtr);
/* Don't buffer deletes if the page has been read in to the buffer
pool. */
if (op == IBUF_OP_DELETE && buf_pool_watch_occurred(space, page_no)) {
err = DB_STRONG_FAIL;
goto function_exit;
}
/* Find out the volume of already buffered inserts for the same index /* Find out the volume of already buffered inserts for the same index
page */ page */
min_n_recs = 0; min_n_recs = 0;
...@@ -3334,13 +3326,25 @@ ibuf_insert_low( ...@@ -3334,13 +3326,25 @@ ibuf_insert_low(
bitmap_page, page_no, zip_size, bitmap_page, page_no, zip_size,
IBUF_BITMAP_BUFFERED, &bitmap_mtr); IBUF_BITMAP_BUFFERED, &bitmap_mtr);
/* Don't buffer deletes if the page has been read in to the buffer
pool. */
if (op == IBUF_OP_DELETE && buf_pool_watch_occurred(space, page_no)) {
err = DB_STRONG_FAIL;
mtr_commit(&bitmap_mtr);
goto function_exit;
}
if (!old_bit_value) { if (!old_bit_value) {
ibuf_bitmap_page_set_bits(bitmap_page, page_no, zip_size, ibuf_bitmap_page_set_bits(bitmap_page, page_no, zip_size,
IBUF_BITMAP_BUFFERED, TRUE, IBUF_BITMAP_BUFFERED, TRUE,
&bitmap_mtr); &bitmap_mtr);
} }
mtr_commit(&bitmap_mtr); if (op != IBUF_OP_DELETE) {
mtr_commit(&bitmap_mtr);
}
cursor = btr_pcur_get_btr_cur(&pcur); cursor = btr_pcur_get_btr_cur(&pcur);
...@@ -3377,6 +3381,12 @@ ibuf_insert_low( ...@@ -3377,6 +3381,12 @@ ibuf_insert_low(
ibuf_size_update(root, &mtr); ibuf_size_update(root, &mtr);
} }
if (op == IBUF_OP_DELETE) {
ut_a(!buf_pool_watch_occurred(space, page_no));
mtr_commit(&bitmap_mtr);
}
function_exit: function_exit:
#ifdef UNIV_IBUF_COUNT_DEBUG #ifdef UNIV_IBUF_COUNT_DEBUG
if (err == DB_SUCCESS) { if (err == DB_SUCCESS) {
......
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