summaryrefslogtreecommitdiff
path: root/storage/xtradb/include/row0merge.h
diff options
context:
space:
mode:
authorJan Lindström <jan.lindstrom@mariadb.com>2015-03-30 18:53:10 +0300
committerJan Lindström <jan.lindstrom@mariadb.com>2015-03-31 09:16:48 +0300
commitb53bcd438f171fcbc3a4ad5051434e1b87c844fe (patch)
tree230b649b0c39b3e830fed962c0ae186d3d37d269 /storage/xtradb/include/row0merge.h
parent0563f49ba355e27543e940052f35e1a904ef077b (diff)
downloadmariadb-git-b53bcd438f171fcbc3a4ad5051434e1b87c844fe.tar.gz
MDEV-7367: Updating a virtual column corrupts table which crashes server
Analysis: MySQL table definition contains also virtual columns. Similarly, index fielnr references MySQL table fields. However, InnoDB table definition does not contain virtual columns. Therefore, when matching MySQL key fieldnr we need to use actual column name to find out referenced InnoDB dictionary column name. Fix: Add new function to match MySQL index key columns to InnoDB dictionary.
Diffstat (limited to 'storage/xtradb/include/row0merge.h')
-rw-r--r--storage/xtradb/include/row0merge.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/storage/xtradb/include/row0merge.h b/storage/xtradb/include/row0merge.h
index 390c0ce038b..57b93b307cd 100644
--- a/storage/xtradb/include/row0merge.h
+++ b/storage/xtradb/include/row0merge.h
@@ -95,6 +95,7 @@ struct index_field_t {
ulint col_no; /*!< column offset */
ulint prefix_len; /*!< column prefix length, or 0
if indexing the whole column */
+ const char* col_name; /*!< column name or NULL */
};
/** Definition of an index being created */