diff options
author | Michael Widenius <monty@askmonty.org> | 2011-02-10 23:02:16 +0200 |
---|---|---|
committer | Michael Widenius <monty@askmonty.org> | 2011-02-10 23:02:16 +0200 |
commit | 7e497abcfb3e761ba5a368316192ae930fb58f6b (patch) | |
tree | 26eb2c2834c600dd240a93205a8a7d06fd0f9449 /mysql-test | |
parent | 4c4c0226a0bb43393b612c2a9a95dcbcae9e84d5 (diff) | |
parent | 75fad9dc95646de03b45fc74dca5673809d679a9 (diff) | |
download | mariadb-git-7e497abcfb3e761ba5a368316192ae930fb58f6b.tar.gz |
Automatic merge with trunk
Diffstat (limited to 'mysql-test')
6 files changed, 164 insertions, 1 deletions
diff --git a/mysql-test/suite/federated/federated_bug_585688.result b/mysql-test/suite/federated/federated_bug_585688.result new file mode 100644 index 00000000000..d846e3a26cf --- /dev/null +++ b/mysql-test/suite/federated/federated_bug_585688.result @@ -0,0 +1,26 @@ +CREATE DATABASE federated; +CREATE DATABASE federated; +# +# Bug #585688: maridb crashes in federatedx code +# +CREATE TABLE federated.t1(a TEXT); +INSERT INTO federated.t1 VALUES('abc'), ('gh'), ('f'), ('ijk'), ('de'); +flush tables; +CREATE TABLE federated.t1(a TEXT) ENGINE=FEDERATED +CONNECTION='mysql://root@127.0.0.1:SLAVE_PORT/federated/t1'; +flush tables; +describe federated.t1; +Field Type Null Key Default Extra +a text YES NULL +show table status from federated; +Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment +t1 FEDERATED 10 Dynamic 5 20 X X X X X X X X latin1_swedish_ci NULL +show table status from federated; +Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment +t1 FEDERATED 10 Dynamic 5 20 X X X X X X X X latin1_swedish_ci NULL +DROP TABLE federated.t1; +DROP TABLE federated.t1; +DROP TABLE IF EXISTS federated.t1; +DROP DATABASE IF EXISTS federated; +DROP TABLE IF EXISTS federated.t1; +DROP DATABASE IF EXISTS federated; diff --git a/mysql-test/suite/federated/federated_bug_585688.test b/mysql-test/suite/federated/federated_bug_585688.test new file mode 100644 index 00000000000..6566125c419 --- /dev/null +++ b/mysql-test/suite/federated/federated_bug_585688.test @@ -0,0 +1,53 @@ +source federated.inc; + +--echo # +--echo # Bug #585688: maridb crashes in federatedx code +--echo # +connection slave; +CREATE TABLE federated.t1(a TEXT); +INSERT INTO federated.t1 VALUES('abc'), ('gh'), ('f'), ('ijk'), ('de'); + +connect (conn_1,127.0.0.1,root,,,$MASTER_MYPORT); + +connection master; +flush tables; + +connection conn_1; +--replace_result $SLAVE_MYPORT SLAVE_PORT +eval CREATE TABLE federated.t1(a TEXT) ENGINE=FEDERATED + CONNECTION='mysql://root@127.0.0.1:$SLAVE_MYPORT/federated/t1'; +disconnect conn_1; + +connection master; +flush tables; + +connect (conn_2,127.0.0.1,root,,,$MASTER_MYPORT); +connect (conn_3,127.0.0.1,root,,,$MASTER_MYPORT); + +connection conn_2; +describe federated.t1; + +connection conn_3; +--replace_column 7 X 8 X 9 X 10 X 11 X 12 X 13 X 14 X +show table status from federated; + +disconnect conn_2; +connect (conn_4,127.0.0.1,root,,,$MASTER_MYPORT); + +connection conn_4; +--replace_column 7 X 8 X 9 X 10 X 11 X 12 X 13 X 14 X +show table status from federated; + +disconnect conn_3; +disconnect conn_4; + +connection master; +DROP TABLE federated.t1; + +connection slave; +DROP TABLE federated.t1; + +connection default; + +source federated_cleanup.inc; + diff --git a/mysql-test/suite/federated/federated_partition-slave.opt b/mysql-test/suite/federated/federated_partition-slave.opt new file mode 100644 index 00000000000..627becdbfb5 --- /dev/null +++ b/mysql-test/suite/federated/federated_partition-slave.opt @@ -0,0 +1 @@ +--innodb diff --git a/mysql-test/suite/federated/federated_partition.result b/mysql-test/suite/federated/federated_partition.result new file mode 100644 index 00000000000..ebcafca4563 --- /dev/null +++ b/mysql-test/suite/federated/federated_partition.result @@ -0,0 +1,34 @@ +CREATE DATABASE federated; +CREATE DATABASE federated; +drop table if exists t1; +create table federated.t1_1 (s1 int primary key) engine=myisam; +create table federated.t1_2 (s1 int primary key) engine=innodb; +create table t1 (s1 int primary key) engine=federated +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'); +insert into t1 values (1), (2), (3), (4); +select * from t1; +s1 +1 +3 +2 +4 +select * from federated.t1_1; +s1 +1 +3 +select * from federated.t1_2; +s1 +2 +4 +drop table t1; +drop table federated.t1_1; +drop table federated.t1_2; +End of 5.1 tests +DROP TABLE IF EXISTS federated.t1; +DROP DATABASE IF EXISTS federated; +DROP TABLE IF EXISTS federated.t1; +DROP DATABASE IF EXISTS federated; diff --git a/mysql-test/suite/federated/federated_partition.test b/mysql-test/suite/federated/federated_partition.test new file mode 100644 index 00000000000..223dab6af16 --- /dev/null +++ b/mysql-test/suite/federated/federated_partition.test @@ -0,0 +1,49 @@ +# +# Tests for partitioned FEDERATED +# +source include/have_partition.inc; +source include/have_innodb.inc; +source federated.inc; + +disable_warnings; +drop table if exists t1; +enable_warnings; + +# +# Federated + partition +# +# Create 2 tables on the Slave, we can use different storage engines. +# Then create a Federated table on the Master, using different connect +# string to specify the two different target partitions we want to use. +# + +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; +--replace_result $SLAVE_MYPORT SLAVE_PORT +eval create table t1 (s1 int primary key) engine=federated + partition by list (s1) + (partition p1 values in (1,3) + connection='mysql://root@127.0.0.1:$SLAVE_MYPORT/federated/t1_1', + partition p2 values in (2,4) + connection='mysql://root@127.0.0.1:$SLAVE_MYPORT/federated/t1_2'); + +insert into t1 values (1), (2), (3), (4); +select * from t1; + +connection slave; +select * from federated.t1_1; +select * from federated.t1_2; + +connection master; +drop table t1; + +connection slave; +drop table federated.t1_1; +drop table federated.t1_2; + +--echo End of 5.1 tests + +source federated_cleanup.inc; diff --git a/mysql-test/t/partition_federated.test b/mysql-test/t/partition_federated.test index 0fe692ecd01..c4a4c9c0dfb 100644 --- a/mysql-test/t/partition_federated.test +++ b/mysql-test/t/partition_federated.test @@ -13,7 +13,7 @@ drop table if exists t1; # Bug #22451 Partitions: duplicate results with engine=federated # ---error ER_PARTITION_MERGE_ERROR +--error ER_CONNECT_TO_FOREIGN_DATA_SOURCE create table t1 (s1 int) engine=federated connection='mysql://root@localhost/federated/t1' partition by list (s1) (partition p1 values in (1), partition p2 values in (2)); |