diff options
author | unknown <heikki@donna.mysql.fi> | 2001-06-03 22:58:03 +0300 |
---|---|---|
committer | unknown <heikki@donna.mysql.fi> | 2001-06-03 22:58:03 +0300 |
commit | 9d4272bbac3678fbd8594027dd6ad62e69d065f3 (patch) | |
tree | ce963973f9fcd0dfa6b854cc66c3c0d53fc93ea0 /innobase/include | |
parent | 5ec76be436655eefc2a6403b21606fad914ac814 (diff) | |
download | mariadb-git-9d4272bbac3678fbd8594027dd6ad62e69d065f3.tar.gz |
manual.texi website address change
row0sel.c CHECK TABLE now also for InnoDB, a join speed optimization
trx0trx.c CHECK TABLE now also for InnoDB, a join speed optimization
rem0cmp.c CHECK TABLE now also for InnoDB, a join speed optimization
row0mysql.c CHECK TABLE now also for InnoDB, a join speed optimization
page0page.c CHECK TABLE now also for InnoDB, a join speed optimization
row0mysql.h CHECK TABLE now also for InnoDB, a join speed optimization
trx0trx.h CHECK TABLE now also for InnoDB, a join speed optimization
btr0btr.h CHECK TABLE now also for InnoDB, a join speed optimization
btr0cur.h CHECK TABLE now also for InnoDB, a join speed optimization
btr0pcur.h CHECK TABLE now also for InnoDB, a join speed optimization
btr0pcur.ic CHECK TABLE now also for InnoDB, a join speed optimization
btr0btr.c CHECK TABLE now also for InnoDB, a join speed optimization
btr0cur.c CHECK TABLE now also for InnoDB, a join speed optimization
btr0sea.c CHECK TABLE now also for InnoDB, a join speed optimization
innodb.result CHECK TABLE now also for InnoDB, a join speed optimization
ha_innobase.cc CHECK TABLE now also for InnoDB, a join speed optimization
ha_innobase.h CHECK TABLE now also for InnoDB, a join speed optimization
sql/ha_innobase.cc:
CHECK TABLE now also for InnoDB, a join speed optimization
sql/ha_innobase.h:
CHECK TABLE now also for InnoDB, a join speed optimization
mysql-test/r/innodb.result:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/btr/btr0btr.c:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/btr/btr0cur.c:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/btr/btr0sea.c:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/include/btr0btr.h:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/include/btr0cur.h:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/include/btr0pcur.h:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/include/btr0pcur.ic:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/include/row0mysql.h:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/include/trx0trx.h:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/page/page0page.c:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/rem/rem0cmp.c:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/row/row0mysql.c:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/row/row0sel.c:
CHECK TABLE now also for InnoDB, a join speed optimization
innobase/trx/trx0trx.c:
CHECK TABLE now also for InnoDB, a join speed optimization
Docs/manual.texi:
website address change
Diffstat (limited to 'innobase/include')
-rw-r--r-- | innobase/include/btr0btr.h | 3 | ||||
-rw-r--r-- | innobase/include/btr0cur.h | 14 | ||||
-rw-r--r-- | innobase/include/btr0pcur.h | 6 | ||||
-rw-r--r-- | innobase/include/btr0pcur.ic | 6 | ||||
-rw-r--r-- | innobase/include/row0mysql.h | 14 | ||||
-rw-r--r-- | innobase/include/trx0trx.h | 14 |
6 files changed, 49 insertions, 8 deletions
diff --git a/innobase/include/btr0btr.h b/innobase/include/btr0btr.h index d2ac9952695..f8a3000ca8a 100644 --- a/innobase/include/btr0btr.h +++ b/innobase/include/btr0btr.h @@ -376,9 +376,10 @@ btr_print_tree( /****************************************************************** Checks the consistency of an index tree. */ -void +ibool btr_validate_tree( /*==============*/ + /* out: TRUE if ok */ dict_tree_t* tree); /* in: tree */ #define BTR_N_LEAF_PAGES 1 diff --git a/innobase/include/btr0cur.h b/innobase/include/btr0cur.h index 79ec56c8e50..4ce2177bfe8 100644 --- a/innobase/include/btr0cur.h +++ b/innobase/include/btr0cur.h @@ -98,12 +98,18 @@ btr_cur_search_to_nth_level( the previous page of the record! Inserts should always be made using PAGE_CUR_LE to search the position! */ - ulint latch_mode, /* in: BTR_SEARCH_LEAF, ...; + ulint latch_mode, /* in: BTR_SEARCH_LEAF, ..., ORed with + BTR_INSERT and BTR_ESTIMATE; cursor->left_page is used to store a pointer to the left neighbor page, in the cases - BTR_SEARCH_PREV and BTR_MODIFY_PREV */ - btr_cur_t* cursor, /* out: tree cursor; the cursor page is s- or - x-latched */ + BTR_SEARCH_PREV and BTR_MODIFY_PREV; + NOTE that if has_search_latch + is != 0, we maybe do not have a latch set + on the cursor page, we assume + the caller uses his search latch + to protect the record! */ + btr_cur_t* cursor, /* in/out: tree cursor; the cursor page is + s- or x-latched, but see also above! */ ulint has_search_latch,/* in: latch mode the caller currently has on btr_search_latch: RW_S_LATCH, or 0 */ diff --git a/innobase/include/btr0pcur.h b/innobase/include/btr0pcur.h index c07d5199d8c..6465093e3c1 100644 --- a/innobase/include/btr0pcur.h +++ b/innobase/include/btr0pcur.h @@ -87,7 +87,11 @@ btr_pcur_open_with_no_init( PAGE_CUR_LE, not PAGE_CUR_GE, as the latter may end up on the previous page of the record! */ - ulint latch_mode,/* in: BTR_SEARCH_LEAF, ... */ + ulint latch_mode,/* in: BTR_SEARCH_LEAF, ...; + NOTE that if has_search_latch != 0 then + we maybe do not acquire a latch on the cursor + page, but assume that the caller uses his + btr search latch to protect the record! */ btr_pcur_t* cursor, /* in: memory buffer for persistent cursor */ ulint has_search_latch,/* in: latch mode the caller currently has on btr_search_latch: diff --git a/innobase/include/btr0pcur.ic b/innobase/include/btr0pcur.ic index 7f31f8fe502..8e927689208 100644 --- a/innobase/include/btr0pcur.ic +++ b/innobase/include/btr0pcur.ic @@ -492,7 +492,11 @@ btr_pcur_open_with_no_init( PAGE_CUR_LE, not PAGE_CUR_GE, as the latter may end up on the previous page of the record! */ - ulint latch_mode,/* in: BTR_SEARCH_LEAF, ... */ + ulint latch_mode,/* in: BTR_SEARCH_LEAF, ...; + NOTE that if has_search_latch != 0 then + we maybe do not acquire a latch on the cursor + page, but assume that the caller uses his + btr search latch to protect the record! */ btr_pcur_t* cursor, /* in: memory buffer for persistent cursor */ ulint has_search_latch,/* in: latch mode the caller currently has on btr_search_latch: diff --git a/innobase/include/row0mysql.h b/innobase/include/row0mysql.h index d47fa729dce..554da2c035c 100644 --- a/innobase/include/row0mysql.h +++ b/innobase/include/row0mysql.h @@ -229,6 +229,15 @@ row_rename_table_for_mysql( char* old_name, /* in: old table name */ char* new_name, /* in: new table name */ trx_t* trx); /* in: transaction handle */ +/************************************************************************* +Checks a table for corruption. */ + +ulint +row_check_table_for_mysql( +/*======================*/ + /* out: DB_ERROR or DB_SUCCESS */ + row_prebuilt_t* prebuilt); /* in: prebuilt struct in MySQL + handle */ /* A struct describing a place for an individual column in the MySQL row format which is presented to the table handler in ha_innobase. @@ -281,7 +290,8 @@ struct row_prebuilt_struct { is set to TRUE */ dict_index_t* index; /* current index for a search, if any */ ulint template_type; /* ROW_MYSQL_WHOLE_ROW, - ROW_MYSQL_REC_FIELDS or + ROW_MYSQL_REC_FIELDS, + ROW_MYSQL_DUMMY_TEMPLATE, or ROW_MYSQL_NO_TEMPLATE */ ulint n_template; /* number of elements in the template */ @@ -359,6 +369,8 @@ struct row_prebuilt_struct { #define ROW_MYSQL_WHOLE_ROW 0 #define ROW_MYSQL_REC_FIELDS 1 #define ROW_MYSQL_NO_TEMPLATE 2 +#define ROW_MYSQL_DUMMY_TEMPLATE 3 /* dummy template used in + row_scan_and_check_index */ #ifndef UNIV_NONINL #include "row0mysql.ic" diff --git a/innobase/include/trx0trx.h b/innobase/include/trx0trx.h index 52be0b1d992..f67ba43162d 100644 --- a/innobase/include/trx0trx.h +++ b/innobase/include/trx0trx.h @@ -24,6 +24,13 @@ saving CPU time. The kernel mutex contention is increased, however. */ extern ulint trx_n_mysql_transactions; +/************************************************************************ +Releases the search latch if trx has reserved it. */ + +void +trx_search_latch_release_if_reserved( +/*=================================*/ + trx_t* trx); /* in: transaction */ /******************************************************************** Retrieves the error_info field from a trx. */ @@ -282,6 +289,13 @@ struct trx_struct{ ulint n_mysql_tables_in_use; /* number of Innobase tables used in the processing of the current SQL statement in MySQL */ + ulint mysql_n_tables_locked; + /* how many tables the current SQL + statement uses, except those + in consistent read */ + ibool has_search_latch; + /* TRUE if this trx has latched the + search system latch in S-mode */ ibool ignore_duplicates_in_insert; /* in an insert roll back only insert of the latest row in case |