1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

SQL: replication from unversioned to versioned [fixes #94]

This commit is contained in:
Aleksey Midenkov
2016-12-18 17:06:43 +00:00
parent ef10ef98ab
commit e45b85eb3e
5 changed files with 232 additions and 8 deletions

View File

@@ -29,5 +29,62 @@ sync_slave_with_master;
select * from t1;
select * from t1 for system_time all;
# check unversioned -> versioned replication
connection master;
create or replace table t1 (x int primary key) engine = innodb;
sync_slave_with_master;
alter table t1 with system versioning;
connection master;
insert into t1 values (1);
update t1 set x= 2 where x = 1;
sync_slave_with_master;
select * from t1;
select * from t1 for system_time all;
connection master;
delete from t1;
sync_slave_with_master;
select * from t1;
select * from t1 for system_time all;
# same thing (UPDATE, DELETE), but without PK
connection master;
create or replace table t1 (x int) engine = innodb;
sync_slave_with_master;
alter table t1 with system versioning;
connection master;
insert into t1 values (1);
update t1 set x= 2 where x = 1;
sync_slave_with_master;
select * from t1;
select * from t1 for system_time all;
connection master;
delete from t1;
sync_slave_with_master;
select * from t1;
select * from t1 for system_time all;
# same thing, but reverse: versioned -> unversioned
connection master;
create or replace table t1 (x int primary key) with system versioning engine = innodb;
sync_slave_with_master;
alter table t1 without system versioning;
connection master;
insert into t1 values (1);
update t1 set x= 2 where x = 1;
select * from t1 for system_time all;
sync_slave_with_master;
select * from t1;
connection master;
delete from t1;
select * from t1 for system_time all;
sync_slave_with_master;
select * from t1;
connection master;
drop table t1;