summaryrefslogtreecommitdiff
path: root/storage/xtradb/handler/ha_innodb.h
diff options
context:
space:
mode:
authorSergei Golubchik <serg@mariadb.org>2016-04-26 19:07:11 +0200
committerSergei Golubchik <serg@mariadb.org>2016-04-26 19:07:11 +0200
commit5b8ac23030a59a8ed3636d441180fec571dbe3d1 (patch)
tree2276f28705e8cf407ed84eb58cedd2166ea4150a /storage/xtradb/handler/ha_innodb.h
parentd76eba6a6b7de3077487ff3e4e7fa0ef2a7a9b00 (diff)
downloadmariadb-git-5b8ac23030a59a8ed3636d441180fec571dbe3d1.tar.gz
5.6.29-76.2
Diffstat (limited to 'storage/xtradb/handler/ha_innodb.h')
-rw-r--r--storage/xtradb/handler/ha_innodb.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/storage/xtradb/handler/ha_innodb.h b/storage/xtradb/handler/ha_innodb.h
index d49a7c228f7..b4c0e0b7cf4 100644
--- a/storage/xtradb/handler/ha_innodb.h
+++ b/storage/xtradb/handler/ha_innodb.h
@@ -642,3 +642,26 @@ innobase_copy_frm_flags_from_table_share(
/*=====================================*/
dict_table_t* innodb_table, /*!< in/out: InnoDB table */
const TABLE_SHARE* table_share); /*!< in: table share */
+
+/*******************************************************************//**
+This function builds a translation table in INNOBASE_SHARE
+structure for fast index location with mysql array number from its
+table->key_info structure. This also provides the necessary translation
+between the key order in mysql key_info and Innodb ib_table->indexes if
+they are not fully matched with each other.
+Note we do not have any mutex protecting the translation table
+building based on the assumption that there is no concurrent
+index creation/drop and DMLs that requires index lookup. All table
+handle will be closed before the index creation/drop.
+@return TRUE if index translation table built successfully */
+UNIV_INTERN
+ibool
+innobase_build_index_translation(
+/*=============================*/
+ const TABLE* table, /*!< in: table in MySQL data
+ dictionary */
+ dict_table_t* ib_table, /*!< in: table in Innodb data
+ dictionary */
+ INNOBASE_SHARE* share); /*!< in/out: share structure
+ where index translation table
+ will be constructed in. */