diff options
author | Guilhem Bichot <guilhem@mysql.com> | 2009-08-04 13:25:19 +0200 |
---|---|---|
committer | Guilhem Bichot <guilhem@mysql.com> | 2009-08-04 13:25:19 +0200 |
commit | b57e4dbd88671df86e2cf39aff5178976d710b64 (patch) | |
tree | 32be2bfec3ca062c65566c60ecf59b673d1f97e9 /storage/innobase/include/btr0cur.ic | |
parent | 1a0c2153a036296785dcdfa7b5f4974515616e11 (diff) | |
parent | 94efc1c6b084ed531b513e70fb66e7b7a1186b56 (diff) | |
download | mariadb-git-b57e4dbd88671df86e2cf39aff5178976d710b64.tar.gz |
Creation of mysql-trunk = {summit + "Innodb plugin replacing the builtin"}:
bzr branch mysql-5.1-performance-version mysql-trunk # Summit
cd mysql-trunk
bzr merge mysql-5.1-innodb_plugin # which is 5.1 + Innodb plugin
bzr rm innobase # remove the builtin
Next step: build, test fixes.
Diffstat (limited to 'storage/innobase/include/btr0cur.ic')
-rw-r--r-- | storage/innobase/include/btr0cur.ic | 154 |
1 files changed, 0 insertions, 154 deletions
diff --git a/storage/innobase/include/btr0cur.ic b/storage/innobase/include/btr0cur.ic deleted file mode 100644 index bd2c46eb734..00000000000 --- a/storage/innobase/include/btr0cur.ic +++ /dev/null @@ -1,154 +0,0 @@ -/****************************************************** -The index tree cursor - -(c) 1994-1996 Innobase Oy - -Created 10/16/1994 Heikki Tuuri -*******************************************************/ - -#include "btr0btr.h" - -/************************************************************* -Returns the page cursor component of a tree cursor. */ -UNIV_INLINE -page_cur_t* -btr_cur_get_page_cur( -/*=================*/ - /* out: pointer to page cursor component */ - btr_cur_t* cursor) /* in: tree cursor */ -{ - return(&(cursor->page_cur)); -} - -/************************************************************* -Returns the record pointer of a tree cursor. */ -UNIV_INLINE -rec_t* -btr_cur_get_rec( -/*============*/ - /* out: pointer to record */ - btr_cur_t* cursor) /* in: tree cursor */ -{ - return(page_cur_get_rec(&(cursor->page_cur))); -} - -/************************************************************* -Invalidates a tree cursor by setting record pointer to NULL. */ -UNIV_INLINE -void -btr_cur_invalidate( -/*===============*/ - btr_cur_t* cursor) /* in: tree cursor */ -{ - page_cur_invalidate(&(cursor->page_cur)); -} - -/************************************************************* -Returns the page of a tree cursor. */ -UNIV_INLINE -page_t* -btr_cur_get_page( -/*=============*/ - /* out: pointer to page */ - btr_cur_t* cursor) /* in: tree cursor */ -{ - return(buf_frame_align(page_cur_get_rec(&(cursor->page_cur)))); -} - -/************************************************************* -Returns the index of a cursor. */ -UNIV_INLINE -dict_index_t* -btr_cur_get_index( -/*==============*/ - /* out: index */ - btr_cur_t* cursor) /* in: B-tree cursor */ -{ - return(cursor->index); -} - -/************************************************************* -Positions a tree cursor at a given record. */ -UNIV_INLINE -void -btr_cur_position( -/*=============*/ - dict_index_t* index, /* in: index */ - rec_t* rec, /* in: record in tree */ - btr_cur_t* cursor) /* in: cursor */ -{ - page_cur_position(rec, btr_cur_get_page_cur(cursor)); - - cursor->index = index; -} - -/************************************************************************* -Checks if compressing an index page where a btr cursor is placed makes -sense. */ -UNIV_INLINE -ibool -btr_cur_compress_recommendation( -/*============================*/ - /* out: TRUE if compression is recommended */ - btr_cur_t* cursor, /* in: btr cursor */ - mtr_t* mtr) /* in: mtr */ -{ - page_t* page; - - ut_ad(mtr_memo_contains(mtr, buf_block_align(btr_cur_get_rec(cursor)), - MTR_MEMO_PAGE_X_FIX)); - - page = btr_cur_get_page(cursor); - - if ((page_get_data_size(page) < BTR_CUR_PAGE_COMPRESS_LIMIT) - || ((btr_page_get_next(page, mtr) == FIL_NULL) - && (btr_page_get_prev(page, mtr) == FIL_NULL))) { - - /* The page fillfactor has dropped below a predefined - minimum value OR the level in the B-tree contains just - one page: we recommend compression if this is not the - root page. */ - - return(dict_index_get_page(cursor->index) - != buf_frame_get_page_no(page)); - } - - return(FALSE); -} - -/************************************************************************* -Checks if the record on which the cursor is placed can be deleted without -making tree compression necessary (or, recommended). */ -UNIV_INLINE -ibool -btr_cur_can_delete_without_compress( -/*================================*/ - /* out: TRUE if can be deleted without - recommended compression */ - btr_cur_t* cursor, /* in: btr cursor */ - ulint rec_size,/* in: rec_get_size(btr_cur_get_rec(cursor))*/ - mtr_t* mtr) /* in: mtr */ -{ - page_t* page; - - ut_ad(mtr_memo_contains(mtr, buf_block_align(btr_cur_get_rec(cursor)), - MTR_MEMO_PAGE_X_FIX)); - - page = btr_cur_get_page(cursor); - - if ((page_get_data_size(page) - rec_size < BTR_CUR_PAGE_COMPRESS_LIMIT) - || ((btr_page_get_next(page, mtr) == FIL_NULL) - && (btr_page_get_prev(page, mtr) == FIL_NULL)) - || (page_get_n_recs(page) < 2)) { - - /* The page fillfactor will drop below a predefined - minimum value, OR the level in the B-tree contains just - one page, OR the page will become empty: we recommend - compression if this is not the root page. */ - - return(dict_index_get_page(cursor->index) - == buf_frame_get_page_no(page)); - } - - return(TRUE); -} |