Details
-
Bug
-
Status: Confirmed (View Workflow)
-
Major
-
Resolution: Unresolved
-
10.4.6, 10.3(EOL), 10.5, 10.6, 10.7(EOL), 10.8(EOL), 10.9(EOL), 10.10(EOL), 10.11, 11.0(EOL), 11.1(EOL), 11.2(EOL), 11.3(EOL), 11.4
Description
when trying to add a column to a big innodb table we get an error saying the column type can not be changed with ALGORITHM=INSTANT, but we are trying to add a column.
MariaDB [regressiondb]> show create table testAndSuite_status\G
|
*************************** 1. row ***************************
|
Table: testAndSuite_status
|
Create Table: CREATE TABLE `testAndSuite_status` (
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
`topo_id` int(10) unsigned NOT NULL,
|
`vmTopo_id` int(10) unsigned NOT NULL DEFAULT 0,
|
`extraKey_id` int(10) NOT NULL DEFAULT 0,
|
`testAndSuite_id` int(10) unsigned NOT NULL,
|
`status` enum('PASSED','FAILED','SKIPPED','UNKNOWN','OUT','GHOST') COLLATE latin1_bin NOT NULL DEFAULT 'GHOST',
|
`rotten` tinyint(1) NOT NULL DEFAULT 0,
|
`duration` varchar(45) COLLATE latin1_bin DEFAULT NULL,
|
`regressRun_id_Pass` int(11) DEFAULT NULL,
|
`regressRun_id_Fail` int(11) DEFAULT NULL,
|
`origin` enum('scanResult','scanGash','admin','gui','expand') COLLATE latin1_bin NOT NULL,
|
`registered` tinyint(1) NOT NULL DEFAULT 0,
|
`changedDate` timestamp NOT NULL DEFAULT current_timestamp(),
|
`remarks` varchar(140) COLLATE latin1_bin DEFAULT NULL,
|
`passCount` int(11) NOT NULL DEFAULT 0,
|
`failCount` int(11) NOT NULL DEFAULT 0,
|
`bossKey` tinyint(1) NOT NULL,
|
`aggregate` int(2) NOT NULL DEFAULT 0 COMMENT '0=normal, 2=agg, 1=pointing to agg',
|
PRIMARY KEY (`id`),
|
KEY `testAndSuite` (`testAndSuite_id`),
|
KEY `topo` (`topo_id`),
|
KEY `regressRun_id_Fail` (`regressRun_id_Fail`),
|
KEY `regressRun_id_Pass` (`regressRun_id_Pass`),
|
KEY `rotten` (`rotten`),
|
KEY `extrakey` (`extraKey_id`),
|
KEY `vmTopo_id` (`vmTopo_id`)
|
) ENGINE=InnoDB AUTO_INCREMENT=2717022889 DEFAULT CHARSET=latin1 COLLATE=latin1_bin
|
1 row in set (0.000 sec)
|
|
MariaDB [regressiondb]> alter table testAndSuite_status ADD master_tas_id INT(11) UNSIGNED NULL DEFAULT NULL, ALGORITHM=INSTANT;
|
ERROR 1846 (0A000): ALGORITHM=INSTANT is not supported. Reason: Cannot change column type. Try ALGORITHM=COPY
|
|
MariaDB [regressiondb]> select VERSION();
|
+--------------------+
|
| VERSION() |
|
+--------------------+
|
| 10.4.6-MariaDB-log |
|
+--------------------+
|
1 row in set (0.000 sec)
|
|
MariaDB [regressiondb]> show variables like '%row_format%';
|
+---------------------------+---------+
|
| Variable_name | Value |
|
+---------------------------+---------+
|
| innodb_default_row_format | dynamic |
|
+---------------------------+---------+
|
1 row in set (0.002 sec)
|
Attachments
Issue Links
- relates to
-
MDEV-11424 Instant ALTER TABLE of failure-free record format changes
-
- Closed
-
-
MDEV-15225 Can't import .ibd file with temporal type format differing from mysql56_temporal_format
-
- Closed
-
- mentioned in
-
Page Failed to load
Activity
Field | Original Value | New Value |
---|---|---|
Description |
when trying to add a column to a big innodb table we get an error saying the column type can not be changed with ALGORITHM=INSTANT, but we are trying to add a column.
MariaDB [regressiondb]> show create table testAndSuite_status\G *************************** 1. row *************************** Table: testAndSuite_status Create Table: CREATE TABLE `testAndSuite_status` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `topo_id` int(10) unsigned NOT NULL, `vmTopo_id` int(10) unsigned NOT NULL DEFAULT 0, `extraKey_id` int(10) NOT NULL DEFAULT 0, `testAndSuite_id` int(10) unsigned NOT NULL, `status` enum('PASSED','FAILED','SKIPPED','UNKNOWN','OUT','GHOST') COLLATE latin1_bin NOT NULL DEFAULT 'GHOST', `rotten` tinyint(1) NOT NULL DEFAULT 0, `duration` varchar(45) COLLATE latin1_bin DEFAULT NULL, `regressRun_id_Pass` int(11) DEFAULT NULL, `regressRun_id_Fail` int(11) DEFAULT NULL, `origin` enum('scanResult','scanGash','admin','gui','expand') COLLATE latin1_bin NOT NULL, `registered` tinyint(1) NOT NULL DEFAULT 0, `changedDate` timestamp NOT NULL DEFAULT current_timestamp(), `remarks` varchar(140) COLLATE latin1_bin DEFAULT NULL, `passCount` int(11) NOT NULL DEFAULT 0, `failCount` int(11) NOT NULL DEFAULT 0, `bossKey` tinyint(1) NOT NULL, `aggregate` int(2) NOT NULL DEFAULT 0 COMMENT '0=normal, 2=agg, 1=pointing to agg', PRIMARY KEY (`id`), KEY `testAndSuite` (`testAndSuite_id`), KEY `topo` (`topo_id`), KEY `regressRun_id_Fail` (`regressRun_id_Fail`), KEY `regressRun_id_Pass` (`regressRun_id_Pass`), KEY `rotten` (`rotten`), KEY `extrakey` (`extraKey_id`), KEY `vmTopo_id` (`vmTopo_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2717022889 DEFAULT CHARSET=latin1 COLLATE=latin1_bin 1 row in set (0.000 sec) MariaDB [regressiondb]> alter table testAndSuite_status ADD master_tas_id INT(11) UNSIGNED NULL DEFAULT NULL, ALGORITHM=INSTANT; ERROR 1846 (0A000): ALGORITHM=INSTANT is not supported. Reason: Cannot change column type. Try ALGORITHM=COPY MariaDB [regressiondb]> select VERSION(); +--------------------+ | VERSION() | +--------------------+ | 10.4.6-MariaDB-log | +--------------------+ 1 row in set (0.000 sec) MariaDB [regressiondb]> show variables like '%row_format%'; +---------------------------+---------+ | Variable_name | Value | +---------------------------+---------+ | innodb_default_row_format | dynamic | +---------------------------+---------+ 1 row in set (0.002 sec) |
when trying to add a column to a big innodb table we get an error saying the column type can not be changed with ALGORITHM=INSTANT, but we are trying to add a column.
{noformat} MariaDB [regressiondb]> show create table testAndSuite_status\G *************************** 1. row *************************** Table: testAndSuite_status Create Table: CREATE TABLE `testAndSuite_status` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `topo_id` int(10) unsigned NOT NULL, `vmTopo_id` int(10) unsigned NOT NULL DEFAULT 0, `extraKey_id` int(10) NOT NULL DEFAULT 0, `testAndSuite_id` int(10) unsigned NOT NULL, `status` enum('PASSED','FAILED','SKIPPED','UNKNOWN','OUT','GHOST') COLLATE latin1_bin NOT NULL DEFAULT 'GHOST', `rotten` tinyint(1) NOT NULL DEFAULT 0, `duration` varchar(45) COLLATE latin1_bin DEFAULT NULL, `regressRun_id_Pass` int(11) DEFAULT NULL, `regressRun_id_Fail` int(11) DEFAULT NULL, `origin` enum('scanResult','scanGash','admin','gui','expand') COLLATE latin1_bin NOT NULL, `registered` tinyint(1) NOT NULL DEFAULT 0, `changedDate` timestamp NOT NULL DEFAULT current_timestamp(), `remarks` varchar(140) COLLATE latin1_bin DEFAULT NULL, `passCount` int(11) NOT NULL DEFAULT 0, `failCount` int(11) NOT NULL DEFAULT 0, `bossKey` tinyint(1) NOT NULL, `aggregate` int(2) NOT NULL DEFAULT 0 COMMENT '0=normal, 2=agg, 1=pointing to agg', PRIMARY KEY (`id`), KEY `testAndSuite` (`testAndSuite_id`), KEY `topo` (`topo_id`), KEY `regressRun_id_Fail` (`regressRun_id_Fail`), KEY `regressRun_id_Pass` (`regressRun_id_Pass`), KEY `rotten` (`rotten`), KEY `extrakey` (`extraKey_id`), KEY `vmTopo_id` (`vmTopo_id`) ) ENGINE=InnoDB AUTO_INCREMENT=2717022889 DEFAULT CHARSET=latin1 COLLATE=latin1_bin 1 row in set (0.000 sec) MariaDB [regressiondb]> alter table testAndSuite_status ADD master_tas_id INT(11) UNSIGNED NULL DEFAULT NULL, ALGORITHM=INSTANT; ERROR 1846 (0A000): ALGORITHM=INSTANT is not supported. Reason: Cannot change column type. Try ALGORITHM=COPY MariaDB [regressiondb]> select VERSION(); +--------------------+ | VERSION() | +--------------------+ | 10.4.6-MariaDB-log | +--------------------+ 1 row in set (0.000 sec) MariaDB [regressiondb]> show variables like '%row_format%'; +---------------------------+---------+ | Variable_name | Value | +---------------------------+---------+ | innodb_default_row_format | dynamic | +---------------------------+---------+ 1 row in set (0.002 sec) {noformat} |
Summary | ALGORITHM=INSTANT wrong error message on adding of column | ALGORITHM=INSTANT fails while adding new column |
Fix Version/s | 10.4 [ 22408 ] | |
Assignee | Marko Mäkelä [ marko ] |
Remote Link | This issue links to "Page (MariaDB Confluence)" [ 32614 ] |
Workflow | MariaDB v3 [ 98249 ] | MariaDB v4 [ 141405 ] |
Status | Open [ 1 ] | Confirmed [ 10101 ] |
Link |
This issue relates to |
Link |
This issue relates to |
Fix Version/s | 10.5 [ 23123 ] | |
Fix Version/s | 10.6 [ 24028 ] | |
Fix Version/s | 10.11 [ 27614 ] | |
Affects Version/s | 10.3 [ 22126 ] | |
Affects Version/s | 10.5 [ 23123 ] | |
Affects Version/s | 10.6 [ 24028 ] | |
Affects Version/s | 10.7 [ 24805 ] | |
Affects Version/s | 10.8 [ 26121 ] | |
Affects Version/s | 10.9 [ 26905 ] | |
Affects Version/s | 10.10 [ 27530 ] | |
Affects Version/s | 10.11 [ 27614 ] | |
Affects Version/s | 11.0 [ 28320 ] | |
Affects Version/s | 11.1 [ 28549 ] | |
Affects Version/s | 11.2 [ 28603 ] | |
Affects Version/s | 11.3 [ 28565 ] | |
Affects Version/s | 11.4 [ 29301 ] | |
Assignee | Marko Mäkelä [ marko ] | Alexander Barkov [ bar ] |
Summary | ALGORITHM=INSTANT fails while adding new column | ALGORITHM=INSTANT fails because of surprise change of timestamp type |
Fix Version/s | 10.4 [ 22408 ] |