summaryrefslogtreecommitdiff
path: root/innobase/btr
diff options
context:
space:
mode:
authorunknown <aivanov@mysql.com>2006-07-26 08:26:07 +0400
committerunknown <aivanov@mysql.com>2006-07-26 08:26:07 +0400
commit820840a02682dd12de5090db608ff669a7455008 (patch)
treec0c4b00da4e4a17001a2dbc33b0dfef6c84b554b /innobase/btr
parentd8bb59fc2f57de2a7676154a401ea16b70f8f773 (diff)
downloadmariadb-git-820840a02682dd12de5090db608ff669a7455008.tar.gz
Applied innodb-5.0-ss660 snapshot.
innobase/btr/btr0cur.c: Applied innodb-5.0-ss660 snapshot. btr_cur_search_to_nth_level(): Reacquire btr_search_latch after inserting to the insert buffer. This was noticed while analyzing Bug#19081 but this shold not fix this bug since according to Heikki, btr_search_latch is not reserved during an insert. innobase/ibuf/ibuf0ibuf.c: Applied innodb-5.0-ss660 snapshot. ibuf_fixed_addr_page(): Add parameter space. As the insert buffer B-tree is only located in the system tablespace (space 0), IBUF_TREE_ROOT_PAGE_NO is only special in space 0. innobase/include/sync0rw.ic: Applied innodb-5.0-ss660 snapshot. rw_lock_s_unlock_func(): Change a debug assertion to a production assertion in order to track down Bug#19081.
Diffstat (limited to 'innobase/btr')
-rw-r--r--innobase/btr/btr0cur.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/innobase/btr/btr0cur.c b/innobase/btr/btr0cur.c
index 3d7b6fffb52..d51a090be75 100644
--- a/innobase/btr/btr0cur.c
+++ b/innobase/btr/btr0cur.c
@@ -439,7 +439,7 @@ retry_page_get:
if (UNIV_LIKELY_NULL(heap)) {
mem_heap_free(heap);
}
- return;
+ goto func_exit;
}
/* Insert to the insert buffer did not succeed:
@@ -555,6 +555,7 @@ retry_page_get:
|| mode != PAGE_CUR_LE);
}
+func_exit:
if (has_search_latch) {
rw_lock_s_lock(&btr_search_latch);