summaryrefslogtreecommitdiff
path: root/innobase
diff options
context:
space:
mode:
authorunknown <aivanov@mysql.com>2006-07-26 07:47:29 +0400
committerunknown <aivanov@mysql.com>2006-07-26 07:47:29 +0400
commit03637f493e21efc5681d6cb141a484ea0bbe838c (patch)
tree1a23979a2a3ac702c03933ec7c8a6c940e18c71d /innobase
parent868fee4dde4d73c2cd999f8a2ffc915f040e9e0b (diff)
downloadmariadb-git-03637f493e21efc5681d6cb141a484ea0bbe838c.tar.gz
Applied innodb-4.1-ss32 snapshot.
innobase/ibuf/ibuf0ibuf.c: Applied innodb-4.1-ss32 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.
Diffstat (limited to 'innobase')
-rw-r--r--innobase/ibuf/ibuf0ibuf.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/innobase/ibuf/ibuf0ibuf.c b/innobase/ibuf/ibuf0ibuf.c
index 2191cdc0ee6..a0011629427 100644
--- a/innobase/ibuf/ibuf0ibuf.c
+++ b/innobase/ibuf/ibuf0ibuf.c
@@ -945,14 +945,11 @@ ibool
ibuf_fixed_addr_page(
/*=================*/
/* out: TRUE if a fixed address ibuf i/o page */
+ ulint space, /* in: space id */
ulint page_no)/* in: page number */
{
- if ((ibuf_bitmap_page(page_no))
- || (page_no == IBUF_TREE_ROOT_PAGE_NO)) {
- return(TRUE);
- }
-
- return(FALSE);
+ return((space == 0 && page_no == IBUF_TREE_ROOT_PAGE_NO)
+ || ibuf_bitmap_page(page_no));
}
/***************************************************************************
@@ -976,7 +973,7 @@ ibuf_page(
return(FALSE);
}
- if (ibuf_fixed_addr_page(page_no)) {
+ if (ibuf_fixed_addr_page(space, page_no)) {
return(TRUE);
}
@@ -1024,7 +1021,7 @@ ibuf_page_low(
return(FALSE);
}
#endif
- if (ibuf_fixed_addr_page(page_no)) {
+ if (ibuf_fixed_addr_page(space, page_no)) {
return(TRUE);
}
@@ -2931,7 +2928,7 @@ ibuf_merge_or_delete_for_page(
return;
}
#endif
- if (ibuf_fixed_addr_page(page_no) || fsp_descr_page(page_no)
+ if (ibuf_fixed_addr_page(space, page_no) || fsp_descr_page(page_no)
|| trx_sys_hdr_page(space, page_no)) {
return;
}