diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2017-06-01 13:03:55 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2017-06-02 09:36:14 +0300 |
commit | 0c92794db3026cda03218caf4918b996baab6ba6 (patch) | |
tree | 467373f26bef9d7d5b51293c69595a0760f76eeb /storage/innobase/row/row0row.cc | |
parent | 3d615e4b1aa4f945f69d310f9a19de80fbaccdca (diff) | |
download | mariadb-git-0c92794db3026cda03218caf4918b996baab6ba6.tar.gz |
Remove deprecated InnoDB file format parameters
The following options will be removed:
innodb_file_format
innodb_file_format_check
innodb_file_format_max
innodb_large_prefix
They have been deprecated in MySQL 5.7.7 (and MariaDB 10.2.2) in WL#7703.
The file_format column in two INFORMATION_SCHEMA tables will be removed:
innodb_sys_tablespaces
innodb_sys_tables
Code to update the file format tag at the end of page 0:5
(TRX_SYS_PAGE in the InnoDB system tablespace) will be removed.
When initializing a new database, the bytes will remain 0.
All references to the Barracuda file format will be removed.
Some references to the Antelope file format (meaning
ROW_FORMAT=REDUNDANT or ROW_FORMAT=COMPACT) will remain.
This basically ports WL#7704 from MySQL 8.0.0 to MariaDB 10.3.1:
commit 4a69dc2a95995501ed92d59a1de74414a38540c6
Author: Marko Mäkelä <marko.makela@oracle.com>
Date: Wed Mar 11 22:19:49 2015 +0200
Diffstat (limited to 'storage/innobase/row/row0row.cc')
-rw-r--r-- | storage/innobase/row/row0row.cc | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/storage/innobase/row/row0row.cc b/storage/innobase/row/row0row.cc index 9b5ef6a3f3c..69cecf2d79f 100644 --- a/storage/innobase/row/row0row.cc +++ b/storage/innobase/row/row0row.cc @@ -209,8 +209,8 @@ row_build_index_entry_low( } if (flag == ROW_BUILD_FOR_UNDO - && dict_table_get_format(index->table) - >= UNIV_FORMAT_B) { + && dict_table_has_atomic_blobs( + index->table)) { /* For build entry for undo, and the table is Barrcuda, we need to skip the prefix data. */ @@ -287,11 +287,11 @@ row_build_index_entry_low( /* If the column is stored externally (off-page) in the clustered index, it must be an ordering field in - the secondary index. In the Antelope format, only - prefix-indexed columns may be stored off-page in the - clustered index record. In the Barracuda format, also - fully indexed long CHAR or VARCHAR columns may be - stored off-page. */ + the secondary index. If !atomic_blobs, the only way + we may have a secondary index pointing to a clustered + index record with an off-page column is when it is a + column prefix index. If atomic_blobs, also fully + indexed long columns may be stored off-page. */ ut_ad(col->ord_part); if (ext) { @@ -306,9 +306,8 @@ row_build_index_entry_low( } if (ind_field->prefix_len == 0) { - /* In the Barracuda format - (ROW_FORMAT=DYNAMIC or - ROW_FORMAT=COMPRESSED), we can have a + /* If ROW_FORMAT=DYNAMIC or + ROW_FORMAT=COMPRESSED, we can have a secondary index on an entire column that is stored off-page in the clustered index. As this is not a @@ -318,11 +317,12 @@ row_build_index_entry_low( continue; } } else if (dfield_is_ext(dfield)) { - /* This table is either in Antelope format + /* This table is either in (ROW_FORMAT=REDUNDANT or ROW_FORMAT=COMPACT) or a purge record where the ordered part of the field is not external. - In Antelope, the maximum column prefix + In ROW_FORMAT=REDUNDANT and ROW_FORMAT=COMPACT, + the maximum column prefix index length is 767 bytes, and the clustered index record contains a 768-byte prefix of each off-page column. */ |