Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Won't Fix
-
10.2(EOL), 10.3(EOL), 10.4(EOL), 10.5
Description
See attached test case that creates table and exports it, this should be run on 10.1 (attached also resulting t0.ibd). Second test case should be run on 10.2 to try import file created above but it fails. Note that final test case should test also row_format=compressed,
encrypted and encrypted+compressed cases.
set global innodb_file_format = 'Barracuda';
|
set global innodb_file_per_table=ON;
|
create table t0 (c1 int not null auto_increment primary key, b char(200)) engine=innodb;
|
alter table t0 discard tablespace;
|
alter table t0 import tablespace;
|
encryption.jan2 'innodb' [ fail ]
|
Test ended at 2018-01-24 11:19:34
|
|
CURRENT_TEST: encryption.jan2
|
mysqltest: At line 12: query 'alter table t0 import tablespace' failed: 1808: Schema mismatch (Expected FSP_SPACE_FLAGS=0x21, .ibd file contains 0x0.)
|
Attachments
Issue Links
- relates to
-
MDEV-15225 Can't import .ibd file with temporal type format differing from mysql56_temporal_format
-
- Closed
-
-
MDEV-18762 Support easy restore of partial backup
-
- Closed
-
-
MDEV-20930 Document that SHOW CREATE TABLE on InnoDB tables only shows ROW_FORMAT when explicitly set
-
- Closed
-
-
MDEV-11658 Simpler, faster IMPORT of InnoDB tables
-
- Open
-
-
MDEV-16851 On schema mismatch in IMPORT TABLESPACE, display ROW_FORMAT in clear text
-
- Closed
-
-
MDEV-20974 Don't require .cfg files to import InnoDB tablespaces
-
- Closed
-
Activity
Field | Original Value | New Value |
---|---|---|
Link | This issue relates to MDEV-11658 [ MDEV-11658 ] |
Link |
This issue relates to |
Assignee | Marko Mäkelä [ marko ] | Ian Gilfillan [ greenman ] |
Assignee | Ian Gilfillan [ greenman ] | Kenneth Dyer [ kennethdyer ] |
Support case ID | 25025 | not-25025 |
Link |
This issue relates to |
Assignee | Kenneth Dyer [ kennethdyer ] | Jacob Moorman [ jacob.moorman ] |
Assignee | Jacob Moorman [ jacob.moorman ] | Geoff Montee [ geoffmontee ] |
Assignee | Geoff Montee [ geoffmontee ] | Marko Mäkelä [ marko ] |
Link |
This issue relates to |
Assignee | Marko Mäkelä [ marko ] | Eugene Kosov [ kevg ] |
Assignee | Eugene Kosov [ kevg ] | Valerii Kravchuk [ valerii ] |
Assignee | Valerii Kravchuk [ valerii ] | Eugene Kosov [ kevg ] |
Link |
This issue relates to |
Link |
This issue relates to |
Fix Version/s | 10.3 [ 22126 ] | |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.5 [ 23123 ] | |
Affects Version/s | 10.3 [ 22126 ] | |
Affects Version/s | 10.4 [ 22408 ] | |
Affects Version/s | 10.5 [ 23123 ] | |
Labels | NRE_106_INNODB |
Fix Version/s | N/A [ 14700 ] | |
Fix Version/s | 10.2 [ 14601 ] | |
Fix Version/s | 10.3 [ 22126 ] | |
Fix Version/s | 10.4 [ 22408 ] | |
Fix Version/s | 10.5 [ 23123 ] | |
Assignee | Eugene Kosov [ kevg ] | Marko Mäkelä [ marko ] |
Resolution | Won't Fix [ 2 ] | |
Status | Open [ 1 ] | Closed [ 6 ] |
Workflow | MariaDB v3 [ 85108 ] | MariaDB v4 [ 153635 ] |
Zendesk Related Tickets | 156020 |
Starting with MariaDB 10.2.17, we do display a more user-friendly message about this:
MDEV-16851On schema mismatch in IMPORT TABLESPACE, display ROW_FORMAT in clear textThe FSP_SPACE_FLAGS is 0 for ROW_FORMAT=REDUNDANT (which was the only option before MySQL 5.0.3) and ROW_FORMAT=COMPACT (which was introduced by me and made the default in MySQL 5.0.3) when using the default innodb_page_size=16k.
In MariaDB 10.2 (and MySQL 5.7), the parameter innodb_default_row_format was introduced, and it was made dynamic by default.
The flags 0x21 are for ROW_FORMAT=DYNAMIC when using the default innodb_page_size=16k.
Ultimately, MDEV-11658 should replace the current clumsy and error-prone mechanism of importing InnoDB data files.
Perhaps the documentation could be clarified about this. SHOW TABLE STATUS can display the actual ROW_FORMAT that is in effect inside InnoDB. It is also worth noting that even if a ROW_FORMAT was specified in a CREATE TABLE or ALTER TABLE statement, it could be overridden by InnoDB unless innodb_file_format=barracuda and innodb_file_per_table=1. This logic was removed in MariaDB 10.2 or 10.3.