Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.3(EOL), 10.4(EOL)
-
None
Description
Right behaviour looks like this.
et @@system_versioning_alter_history=keep;
|
create or replace table t ( |
a int without system versioning |
) with system versioning engine=innodb; |
versioning.kevg 'innodb' [ fail ] |
Test ended at 2018-06-14 21:32:40 |
 |
CURRENT_TEST: versioning.kevg
|
mysqltest: At line 82: query 'create or replace table t ( |
a int without system versioning
|
) with system versioning engine=innodb' failed: 4123: Table `t` must have at least one versioned column |
|
But it's possible to bypass this error with ALTER TABLE:
set @@system_versioning_alter_history=keep; |
create or replace table t ( |
a int |
) with system versioning engine=innodb; |
alter table t |
change column a a int without system versioning; |
show create table t; |
Table Create Table |
t CREATE TABLE `t` ( |
`a` int(11) DEFAULT NULL WITHOUT SYSTEM VERSIONING |
) ENGINE=InnoDB DEFAULT CHARSET=latin1 WITH SYSTEM VERSIONING |
|
Same with trx_id based tables.