mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
91 lines
2.6 KiB
Text
91 lines
2.6 KiB
Text
connect master,127.0.0.1,root,,test,$MASTER_MYPORT,;
|
|
connect slave,127.0.0.1,root,,test,$SLAVE_MYPORT,;
|
|
connection master;
|
|
CREATE DATABASE federated;
|
|
connection slave;
|
|
CREATE DATABASE federated;
|
|
drop table if exists t1;
|
|
connection slave;
|
|
create table federated.t1_1 (s1 int primary key) engine=myisam;
|
|
create table federated.t1_2 (s1 int primary key) engine=innodb;
|
|
connection master;
|
|
create table t1 (s1 int primary key) engine=federated
|
|
CONNECTION="remember_this"
|
|
partition by list (s1)
|
|
(partition p1 values in (1,3)
|
|
connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1_1',
|
|
partition p2 values in (2,4)
|
|
connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1_2');
|
|
show create table t1;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`s1` int(11) NOT NULL,
|
|
PRIMARY KEY (`s1`)
|
|
) ENGINE=FEDERATED DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci CONNECTION='remember_this'
|
|
PARTITION BY LIST (`s1`)
|
|
(PARTITION `p1` VALUES IN (1,3) CONNECTION = 'mysql://root@127.0.0.1:SLAVE_PORT/federated/t1_1' ENGINE = FEDERATED,
|
|
PARTITION `p2` VALUES IN (2,4) CONNECTION = 'mysql://root@127.0.0.1:SLAVE_PORT/federated/t1_2' ENGINE = FEDERATED)
|
|
insert into t1 values (1), (2), (3), (4);
|
|
select * from t1;
|
|
s1
|
|
1
|
|
3
|
|
2
|
|
4
|
|
connection slave;
|
|
select * from federated.t1_1;
|
|
s1
|
|
1
|
|
3
|
|
select * from federated.t1_2;
|
|
s1
|
|
2
|
|
4
|
|
connection master;
|
|
drop table t1;
|
|
connection slave;
|
|
drop table federated.t1_1;
|
|
drop table federated.t1_2;
|
|
End of 5.1 tests
|
|
#
|
|
# MDEV-18734 ASAN heap-use-after-free upon sorting by blob column from partitioned table
|
|
#
|
|
connection slave;
|
|
use federated;
|
|
create table t1_1 (x int, b text, key(x));
|
|
create table t1_2 (x int, b text, key(x));
|
|
connection master;
|
|
create table t1 (x int, b text, key(x)) engine=federated
|
|
partition by range columns (x) (
|
|
partition p1 values less than (40) connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1_1',
|
|
partition pn values less than (maxvalue) connection='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1_2'
|
|
);
|
|
insert t1 values (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8);
|
|
insert t1 select x + 8, x + 8 from t1;
|
|
insert t1 select x + 16, x + 16 from t1;
|
|
insert t1 select x + 49, repeat(x + 49, 100) from t1;
|
|
flush tables;
|
|
# This produces wrong result before MDEV-17573
|
|
select x, left(b, 10) from t1 where x > 30 and x < 60 order by b;
|
|
x left(b, 10)
|
|
31 31
|
|
32 32
|
|
50 5050505050
|
|
51 5151515151
|
|
52 5252525252
|
|
53 5353535353
|
|
54 5454545454
|
|
55 5555555555
|
|
56 5656565656
|
|
57 5757575757
|
|
58 5858585858
|
|
59 5959595959
|
|
drop table t1;
|
|
connection slave;
|
|
drop table t1_1, t1_2;
|
|
connection master;
|
|
DROP TABLE IF EXISTS federated.t1;
|
|
DROP DATABASE IF EXISTS federated;
|
|
connection slave;
|
|
DROP TABLE IF EXISTS federated.t1;
|
|
DROP DATABASE IF EXISTS federated;
|