diff options
author | Sergei Golubchik <serg@mariadb.org> | 2015-12-15 20:13:09 +0100 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2015-12-15 20:13:09 +0100 |
commit | 15f7f5c6bb4eb8ee8d868bb991f25b18d36f64ec (patch) | |
tree | f34ee89e970d980124ce8390550e0845e1c52dc4 /storage/tokudb/mysql-test/rpl/t | |
parent | a75ac82c2f24a6a7ffb2effe90455d367913b78d (diff) | |
parent | 2c8c65297865d9f8da501761f46e2a34e29af603 (diff) | |
download | mariadb-git-15f7f5c6bb4eb8ee8d868bb991f25b18d36f64ec.tar.gz |
Merge branch 'merge-tokudb-5.6' into 10.0
Diffstat (limited to 'storage/tokudb/mysql-test/rpl/t')
40 files changed, 650 insertions, 1 deletions
diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_deadlock_tokudb-slave.opt b/storage/tokudb/mysql-test/rpl/t/rpl_deadlock_tokudb-slave.opt new file mode 100644 index 00000000000..3819e7c3f7b --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_deadlock_tokudb-slave.opt @@ -0,0 +1 @@ +--innodb_lock_wait_timeout=4 --slave-transaction-retries=2 --max-relay-log-size=4096 diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_deadlock_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_deadlock_tokudb.test new file mode 100644 index 00000000000..86d28a12ad3 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_deadlock_tokudb.test @@ -0,0 +1,8 @@ +-- source include/not_ndb_default.inc +-- source include/have_tokudb.inc +-- source include/not_mts_slave_parallel_workers.inc +-- source include/not_relay_log_info_table.inc +-- source include/not_master_info_table.inc + +let $engine_type=TokuDB; +-- source extra/rpl_tests/rpl_deadlock.test diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_extra_col_master_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_extra_col_master_tokudb.test new file mode 100644 index 00000000000..4ee8fd38010 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_extra_col_master_tokudb.test @@ -0,0 +1,11 @@ +############################################################# +# Purpose: To test having extra columns on the master WL#3915 +############################################################# +-- source include/have_binlog_format_row.inc +-- source include/master-slave.inc +-- source include/have_tokudb.inc + +let $engine_type=TokuDB; +--source extra/rpl_tests/rpl_extra_col_master.test + +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_extra_col_slave_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_extra_col_slave_tokudb.test new file mode 100644 index 00000000000..b3d157a513d --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_extra_col_slave_tokudb.test @@ -0,0 +1,7 @@ +-- source include/have_binlog_format_row.inc +-- source include/have_tokudb.inc +-- source include/master-slave.inc + +let $engine_type='TokuDB'; +-- source extra/rpl_tests/rpl_extra_col_slave.test +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_foreign_key_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_foreign_key_tokudb.test new file mode 100644 index 00000000000..d798cfd4a62 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_foreign_key_tokudb.test @@ -0,0 +1,4 @@ +-- source include/not_ndb_default.inc +-- source include/have_tokudb.inc +let $engine_type=TokuDB; +-- source extra/rpl_tests/rpl_foreign_key.test diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_mixed_row_tokudb-master.opt b/storage/tokudb/mysql-test/rpl/t/rpl_mixed_row_tokudb-master.opt new file mode 100644 index 00000000000..96f0ce3f36c --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_mixed_row_tokudb-master.opt @@ -0,0 +1 @@ +--default-storage-engine=MyISAM diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_not_null_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_not_null_tokudb.test new file mode 100644 index 00000000000..8fde1c3415b --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_not_null_tokudb.test @@ -0,0 +1,20 @@ +################################################################################# +# This test checks if the replication between "null" fields to either "null" +# fields or "not null" fields works properly. In the first case, the execution +# should work fine. In the second case, it may fail according to the sql_mode +# being used. +# +# The test is devided in three main parts: +# +# 1 - NULL --> NULL (no failures) +# 2 - NULL --> NOT NULL ( sql-mode = STRICT and failures) +# 3 - NULL --> NOT NULL ( sql-mode != STRICT and no failures) +# +################################################################################# +--source include/master-slave.inc +--source include/have_tokudb.inc +--source include/have_binlog_format_row.inc + +let $engine=Innodb; +--source extra/rpl_tests/rpl_not_null.test +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb-master.opt b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb-master.opt new file mode 100644 index 00000000000..4426a9c9746 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb-master.opt @@ -0,0 +1 @@ +--log-warnings=0 diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb-slave.opt b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb-slave.opt new file mode 100644 index 00000000000..b351df53683 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb-slave.opt @@ -0,0 +1,5 @@ +--log-warnings=0 --slave-transaction-retries=0 + + + + diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb.test new file mode 100644 index 00000000000..efb60fac2ba --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb.test @@ -0,0 +1,15 @@ +#Want to skip this test from daily Valgrind execution +--source include/no_valgrind_without_big.inc +# +# WL#5569 MTS +# +# The test is similar to rpl_parallel (see further instruction there) but +# checks and provides benchmarking data with load to innodb tables. +# + +--source include/master-slave.inc + +connection master; +source extra/rpl_tests/rpl_parallel_load_tokudb.test; + +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_delete_pk-slave.opt b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_delete_pk-slave.opt new file mode 100644 index 00000000000..2c35be69b98 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_delete_pk-slave.opt @@ -0,0 +1,2 @@ +--read-only=ON --tokudb-rpl-unique-checks-delay=10000 --tokudb-rpl-unique-checks=OFF --tokudb-rpl-lookup-rows-delay=10000 --tokudb-rpl-lookup-rows=OFF --slave-parallel-workers=2 + diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_delete_pk.test b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_delete_pk.test new file mode 100644 index 00000000000..fb42f40bb62 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_delete_pk.test @@ -0,0 +1,63 @@ +# test replicated delete rows log events on a table with a primary key. +# the slave is read only with tokudb rpl row lookups OFF. + +source include/have_tokudb.inc; +let $engine=tokudb; +source include/have_binlog_format_row.inc; +source include/master-slave.inc; + +# initialize +connection master; +disable_warnings; +drop table if exists t; +enable_warnings; + +connection slave; +# show variables like 'read_only'; +# show variables like 'tokudb_rpl_%'; + +# insert some rows +connection master; +# select @@binlog_format; +# select @@autocommit; +eval create table t (a bigint not null, primary key(a)) engine=$engine; +# show create table t; +insert into t values (1); +insert into t values (2),(3); +insert into t values (4); + +# wait for the inserts to finish on the slave +connection master; +sync_slave_with_master; +# source include/sync_slave_sql_with_master.inc; + +# diff tables +connection master; +--let $diff_tables= master:test.t, slave:test.t +source include/diff_tables.inc; + +# delete a row +connection master; +delete from t where a=2; +select unix_timestamp() into @tstart; + +# wait for the delete to finish on the slave +connection master; +sync_slave_with_master; +# source include/sync_slave_sql_with_master.inc; +connection master; +select unix_timestamp() into @tend; +select @tend-@tstart <= 5; # assert no delay in the delete time + +# diff tables +--let $diff_tables= master:test.t, slave:test.t +source include/diff_tables.inc; + +# cleanup +connection master; +drop table if exists t; +sync_slave_with_master; +# source include/sync_slave_sql_with_master.inc; + +source include/rpl_end.inc; + diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_update_pk_uc0_lookup0-slave.opt b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_update_pk_uc0_lookup0-slave.opt new file mode 100644 index 00000000000..d84d7111bd6 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_update_pk_uc0_lookup0-slave.opt @@ -0,0 +1 @@ +--read-only=ON --tokudb-rpl-unique-checks-delay=10000 --tokudb-rpl-unique-checks=OFF --tokudb-rpl-lookup-rows-delay=10000 --tokudb-rpl-lookup-rows=OFF --slave-parallel-workers=2 diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_update_pk_uc0_lookup0.test b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_update_pk_uc0_lookup0.test new file mode 100644 index 00000000000..998987349c7 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_update_pk_uc0_lookup0.test @@ -0,0 +1,70 @@ +# test replicated update rows log events on a table with a primary key. + +source include/have_tokudb.inc; +let $engine=tokudb; +source include/have_binlog_format_row.inc; +source include/master-slave.inc; + +# initialize +connection master; +disable_warnings; +drop table if exists t; +enable_warnings; + +connection slave; +# show variables like 'read_only'; +# show variables like 'tokudb_rpl_%'; + +# insert some rows +connection master; +# select @@binlog_format; +# select @@autocommit; +eval create table t (a bigint not null, b bigint not null, primary key(a)) engine=$engine; +# show create table t; +insert into t values (1,0); +insert into t values (2,0),(3,0); +insert into t values (4,0); + +# wait for the inserts to finish on the slave +connection master; +sync_slave_with_master; +# source include/sync_slave_sql_with_master.inc; + +# diff tables +connection master; +--let $diff_tables= master:test.t, slave:test.t +source include/diff_tables.inc; + +# delete a row +connection master; +update t set b=b+1 where a=2; +update t set b=b+2 where a=1; +update t set b=b+3 where a=4; +update t set b=b+4 where a=3; +update t set b=b+1 where 1<=a and a<=3; +select unix_timestamp() into @tstart; + +# wait for the delete to finish on the slave +connection master; +sync_slave_with_master; +# source include/sync_slave_sql_with_master.inc; +connection master; +select unix_timestamp() into @tend; +select @tend-@tstart <= 5; # assert no delay in the delete time + +connection slave; +select * from t; + +# diff tables +--let $diff_tables= master:test.t, slave:test.t +source include/diff_tables.inc; + +# cleanup +connection master; +drop table if exists t; + +sync_slave_with_master; +# source include/sync_slave_sql_with_master.inc; + +source include/rpl_end.inc; + diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_write_pk-slave.opt b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_write_pk-slave.opt new file mode 100644 index 00000000000..9e4f2f7048d --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_write_pk-slave.opt @@ -0,0 +1,2 @@ +--read-only=ON --tokudb-rpl-unique-checks-delay=5000 --tokudb-rpl-unique-checks=OFF --slave-parallel-workers=2 + diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_write_pk.test b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_write_pk.test new file mode 100644 index 00000000000..c77e4b49605 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_parallel_tokudb_write_pk.test @@ -0,0 +1,53 @@ +# test replicated write rows log events on a table with a primary key. +# the slave is read only with tokudb unique checks disabled. + +source include/have_tokudb.inc; +let $engine=tokudb; +source include/have_binlog_format_row.inc; +source include/master-slave.inc; + +# initialize +connection master; +disable_warnings; +drop table if exists t; +enable_warnings; + +connection slave; +# show variables like 'read_only'; +# show variables like 'tokudb_rpl_unique_checks%'; + +# insert some rows +connection master; +# select @@binlog_format; +# select @@autocommit; +eval create table t (a bigint not null, primary key(a)) engine=$engine; +# show create table t; +select unix_timestamp() into @tstart; +insert into t values (1); +insert into t values (2),(3); +insert into t values (4); + +sync_slave_with_master; +# source include/sync_slave_sql_with_master.inc; + +connection master; +select unix_timestamp()-@tstart <= 10; + +connection slave; +# insert into t values (5); # test read-only +# show create table t; + +# diff tables +connection master; +--let $diff_tables= master:test.t, slave:test.t +source include/diff_tables.inc; + +# cleanup +connection master; +drop table if exists t; + +sync_slave_with_master; +# source include/sync_slave_sql_with_master.inc; + +source include/rpl_end.inc; + diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_partition_tokudb-master.opt b/storage/tokudb/mysql-test/rpl/t/rpl_partition_tokudb-master.opt new file mode 100644 index 00000000000..0eed7aaadad --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_partition_tokudb-master.opt @@ -0,0 +1 @@ +--innodb_autoinc_lock_mode=0 diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_partition_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_partition_tokudb.test new file mode 100644 index 00000000000..a80363cc91d --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_partition_tokudb.test @@ -0,0 +1,12 @@ +# Test of partitioning features with replication for InnoDB +--source include/have_tokudb.inc +--source include/have_partition.inc +--source include/master-slave.inc + +# Set the default connection to 'master' + +let $engine_type=TokuDB; + +--source suite/rpl/include/rpl_partition.inc + +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_relay_space_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_relay_space_tokudb.test new file mode 100644 index 00000000000..232ec944c16 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_relay_space_tokudb.test @@ -0,0 +1,4 @@ +-- source include/not_ndb_default.inc +-- source include/have_tokudb.inc +let $engine_type=TokuDB; +-- source extra/rpl_tests/rpl_sv_relay_space.test diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_row_basic_3tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_row_basic_3tokudb.test new file mode 100644 index 00000000000..d600137bec4 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_row_basic_3tokudb.test @@ -0,0 +1,11 @@ +-- source include/have_tokudb.inc +-- source include/have_binlog_format_row.inc +-- source include/master-slave.inc + +connection slave; +let $bit_field_special = ALL_LOSSY; +let $type= 'INNODB' ; +let $extra_index= ; +-- source extra/rpl_tests/rpl_row_basic.test + +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_row_blob_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_row_blob_tokudb.test new file mode 100644 index 00000000000..b96219a0c50 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_row_blob_tokudb.test @@ -0,0 +1,15 @@ +################################# +# Wrapper for rpl_row_blob.test# +################################# +######################################################## +# By JBM 2005-02-15 Wrapped to allow reuse of test code# +# Added to skip if ndb is default # +######################################################## +-- source include/not_ndb_default.inc +-- source include/have_tokudb.inc +-- source include/have_binlog_format_row.inc +-- source include/master-slave.inc +let $engine_type=TokuDB; +-- source extra/rpl_tests/rpl_row_blob.test + +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_row_log_tokudb-master.opt b/storage/tokudb/mysql-test/rpl/t/rpl_row_log_tokudb-master.opt new file mode 100644 index 00000000000..773ec62bef2 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_row_log_tokudb-master.opt @@ -0,0 +1,2 @@ +--skip-external-locking +--default-storage-engine=MyISAM diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_row_log_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_row_log_tokudb.test new file mode 100644 index 00000000000..bc624d4d89c --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_row_log_tokudb.test @@ -0,0 +1,15 @@ +################################### +# Wrapper for rpl_row_log.test # +# Added wrapper so that MyISAM & # +# Innodb and NDB could all use the# +# Same test. NDB produced a diff # +# bin-log # +################################### +-- source include/not_ndb_default.inc +-- source include/have_binlog_format_row.inc +-- source include/have_tokudb.inc +-- source include/master-slave.inc +let $engine_type=TokuDB; +-- source extra/rpl_tests/rpl_log.test + +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_row_rec_comp_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_row_rec_comp_tokudb.test new file mode 100644 index 00000000000..8d84de1df7d --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_row_rec_comp_tokudb.test @@ -0,0 +1,11 @@ +-- source include/have_binlog_format_row.inc +-- source include/master-slave.inc +-- source include/have_tokudb.inc + +# +# BUG#52868 Wrong handling of NULL value during update, replication out of sync +# + +-- let $engine= TokuDB +-- source extra/rpl_tests/rpl_record_compare.test +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_row_sp002_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_row_sp002_tokudb.test new file mode 100644 index 00000000000..82c1e17f488 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_row_sp002_tokudb.test @@ -0,0 +1,4 @@ +-- source include/not_ndb_default.inc +-- source include/have_tokudb.inc +let $engine_type=TokuDB; +-- source extra/rpl_tests/rpl_row_sp002.test diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_row_sp007_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_row_sp007_tokudb.test new file mode 100644 index 00000000000..6deaa68d23e --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_row_sp007_tokudb.test @@ -0,0 +1,4 @@ +-- source include/not_ndb_default.inc +-- source include/have_tokudb.inc +let $engine_type=TokuDB; +-- source extra/rpl_tests/rpl_row_sp007.test diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_row_tabledefs_3tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_row_tabledefs_3tokudb.test new file mode 100644 index 00000000000..e4558d0e87a --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_row_tabledefs_3tokudb.test @@ -0,0 +1,10 @@ + +-- source include/have_binlog_format_row.inc +-- source include/have_tokudb.inc +-- source include/master-slave.inc + +let $engine_type=TokuDB; +-- source extra/rpl_tests/rpl_row_tabledefs.test + + +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_set_null_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_set_null_tokudb.test new file mode 100644 index 00000000000..78ae341b29f --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_set_null_tokudb.test @@ -0,0 +1,7 @@ +-- source include/have_binlog_format_mixed_or_row.inc +-- source include/master-slave.inc +-- source include/have_tokudb.inc + +-- let $engine= TokuDB +-- source extra/rpl_tests/rpl_set_null.test +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_stm_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_stm_tokudb.test new file mode 100644 index 00000000000..72daaefd3fb --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_stm_tokudb.test @@ -0,0 +1,11 @@ +# File for specialities regarding replication from or to InnoDB +# tables. + +source include/master-slave.inc; +source include/have_tokudb.inc; +source include/have_binlog_format_statement.inc; +# gtids disabled because it tests DROP TEMPORARY inside a transaction +source include/not_gtid_enabled.inc; + +source extra/rpl_tests/rpl_tokudb.test; +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_tokudb-master.opt b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb-master.opt new file mode 100644 index 00000000000..0eed7aaadad --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb-master.opt @@ -0,0 +1 @@ +--innodb_autoinc_lock_mode=0 diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430-master.opt b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430-master.opt new file mode 100644 index 00000000000..0eed7aaadad --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430-master.opt @@ -0,0 +1 @@ +--innodb_autoinc_lock_mode=0 diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430-slave.opt b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430-slave.opt new file mode 100644 index 00000000000..0eed7aaadad --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430-slave.opt @@ -0,0 +1 @@ +--innodb_autoinc_lock_mode=0 diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430.test b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430.test new file mode 100644 index 00000000000..4cc7f032db9 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug28430.test @@ -0,0 +1,159 @@ +#Want to skip this test from daily Valgrind execution +--source include/no_valgrind_without_big.inc + +--source include/have_tokudb.inc +--source include/have_partition.inc +--source include/have_binlog_format_mixed_or_row.inc +--source include/master-slave.inc + +# Set the default connection to 'master' + +--vertical_results + +let $engine_type=TokuDB; + +######## Creat Table Section ######### +use test; + +eval CREATE TABLE test.regular_tbl(id MEDIUMINT NOT NULL AUTO_INCREMENT, + dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON + UPDATE CURRENT_TIMESTAMP, user CHAR(255), uuidf LONGBLOB, + fkid MEDIUMINT, filler VARCHAR(255), + PRIMARY KEY(id)) ENGINE=$engine_type; + +eval CREATE TABLE test.bykey_tbl(id MEDIUMINT NOT NULL AUTO_INCREMENT, + dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE + CURRENT_TIMESTAMP, user CHAR(255), uuidf LONGBLOB, + fkid MEDIUMINT, filler VARCHAR(255), + PRIMARY KEY(id)) ENGINE=$engine_type + PARTITION BY KEY(id) partitions 5; + +eval CREATE TABLE test.byrange_tbl(id MEDIUMINT NOT NULL AUTO_INCREMENT, + dt TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE + CURRENT_TIMESTAMP, user CHAR(255), uuidf LONGBLOB, + fkid MEDIUMINT, filler VARCHAR(255), + PRIMARY KEY(id)) ENGINE=$engine_type + PARTITION BY RANGE(id) + SUBPARTITION BY hash(id) subpartitions 2 + (PARTITION pa1 values less than (10), + PARTITION pa2 values less than (20), + PARTITION pa3 values less than (30), + PARTITION pa4 values less than (40), + PARTITION pa5 values less than (50), + PARTITION pa6 values less than (60), + PARTITION pa7 values less than (70), + PARTITION pa8 values less than (80), + PARTITION pa9 values less than (90), + PARTITION pa10 values less than (100), + PARTITION pa11 values less than MAXVALUE); + +######## Create SPs, Functions, Views and Triggers Section ############## + +delimiter |; +CREATE PROCEDURE test.proc_norm() +BEGIN + DECLARE ins_count INT DEFAULT 1000; + DECLARE del_count INT; + DECLARE cur_user VARCHAR(255); + DECLARE local_uuid VARCHAR(255); + DECLARE local_time TIMESTAMP; + + SET local_time= NOW(); + SET cur_user= CURRENT_USER(); + SET local_uuid= UUID(); + + WHILE ins_count > 0 DO + INSERT INTO test.regular_tbl VALUES (NULL, NOW(), USER() , UUID(), + ins_count,'Going to test MBR for MySQL'); + SET ins_count = ins_count - 1; + END WHILE; + + SELECT MAX(id) FROM test.regular_tbl INTO del_count; + WHILE del_count > 0 DO + DELETE FROM test.regular_tbl WHERE id = del_count; + SET del_count = del_count - 2; + END WHILE; +END| + +CREATE PROCEDURE test.proc_bykey() +BEGIN + DECLARE ins_count INT DEFAULT 1000; + DECLARE del_count INT; + DECLARE cur_user VARCHAR(255); + DECLARE local_uuid VARCHAR(255); + DECLARE local_time TIMESTAMP; + + SET local_time= NOW(); + SET cur_user= CURRENT_USER(); + SET local_uuid= UUID(); + + WHILE ins_count > 0 DO + INSERT INTO test.bykey_tbl VALUES (NULL, NOW(), USER() , UUID(), + ins_count,'Going to test MBR for MySQL'); + SET ins_count = ins_count - 1; + END WHILE; + + SELECT MAX(id) FROM test.bykey_tbl INTO del_count; + WHILE del_count > 0 DO + DELETE FROM test.bykey_tbl WHERE id = del_count; + SET del_count = del_count - 2; + END WHILE; +END| + +CREATE PROCEDURE test.proc_byrange() +BEGIN + DECLARE ins_count INT DEFAULT 1000; + DECLARE del_count INT; + DECLARE cur_user VARCHAR(255); + DECLARE local_uuid VARCHAR(255); + DECLARE local_time TIMESTAMP; + + SET local_time= NOW(); + SET cur_user = CURRENT_USER(); + SET local_uuid=UUID(); + + WHILE ins_count > 0 DO + INSERT INTO test.byrange_tbl VALUES (NULL, NOW(), USER(), UUID(), + ins_count,'Going to test MBR for MySQL'); + SET ins_count = ins_count - 1; + END WHILE; + + SELECT MAX(id) FROM test.byrange_tbl INTO del_count; + WHILE del_count > 0 DO + DELETE FROM test.byrange_tbl WHERE id = del_count; + SET del_count = del_count - 2; + END WHILE; +END| + +delimiter ;| + +############ Finish Setup Section ################### + + +############ Test Section ################### + +CALL test.proc_norm(); +SELECT count(*) as "Master regular" FROM test.regular_tbl; +CALL test.proc_bykey(); +SELECT count(*) as "Master bykey" FROM test.bykey_tbl; +CALL test.proc_byrange(); +SELECT count(*) as "Master byrange" FROM test.byrange_tbl; + +--sync_slave_with_master +connection slave; +show create table test.byrange_tbl; +SELECT count(*) "Slave norm" FROM test.regular_tbl; +SELECT count(*) "Slave bykey" FROM test.bykey_tbl; +SELECT count(*) "Slave byrange" FROM test.byrange_tbl; + +###### CLEAN UP SECTION ############## + +connection master; +DROP PROCEDURE test.proc_norm; +DROP PROCEDURE test.proc_bykey; +DROP PROCEDURE test.proc_byrange; +DROP TABLE test.regular_tbl; +DROP TABLE test.bykey_tbl; +DROP TABLE test.byrange_tbl; + +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug30888.test b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug30888.test new file mode 100644 index 00000000000..406e9c2a63a --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_bug30888.test @@ -0,0 +1,66 @@ +--source include/have_tokudb.inc +--source include/have_binlog_format_mixed_or_row.inc +--source include/master-slave.inc + +# Set the default connection to 'master' + +--vertical_results + +#let $engine_type=TokuDB; +let $engine_type=TokuDB; + +######## Creat Table Section ######### +use test; + +eval CREATE TABLE test.regular_tbl(id MEDIUMINT NOT NULL AUTO_INCREMENT, + dt TIMESTAMP, user CHAR(255), uuidf LONGBLOB, + fkid MEDIUMINT, filler VARCHAR(255), + PRIMARY KEY(id)) ENGINE=$engine_type; + +######## Create SPs, Functions, Views and Triggers Section ############## + +delimiter |; +CREATE PROCEDURE test.proc_norm() +BEGIN + DECLARE ins_count INT DEFAULT 1000; + DECLARE del_count INT; + DECLARE cur_user VARCHAR(255); + DECLARE local_uuid VARCHAR(255); + DECLARE local_time TIMESTAMP; + + SET local_time= NOW(); + SET cur_user= CURRENT_USER(); + SET local_uuid= UUID(); + + WHILE ins_count > 0 DO + INSERT INTO test.regular_tbl VALUES (NULL, NOW(), USER() , UUID(), + ins_count,'Going to test MBR for MySQL'); + SET ins_count = ins_count - 1; + END WHILE; + + SELECT MAX(id) FROM test.regular_tbl INTO del_count; + WHILE del_count > 0 DO + DELETE FROM test.regular_tbl WHERE id = del_count; + SET del_count = del_count - 2; + END WHILE; +END| + +delimiter ;| + +############ Finish Setup Section ################### + + +############ Test Section ################### + +CALL test.proc_norm(); + +--sync_slave_with_master + +###### CLEAN UP SECTION ############## + +connection master; +DROP PROCEDURE test.proc_norm; +DROP TABLE test.regular_tbl; + +--source include/rpl_end.inc + diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_ddl.test b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_ddl.test new file mode 100644 index 00000000000..5614769307d --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_ddl.test @@ -0,0 +1,9 @@ +######################################### +# Purpose: testing the replication in mixed mode +# Requirements: define binlog format for mysqld as in example below: +# ./mysql-test-run.pl --mysqld=--binlog-format=mixed +######################################### +--source include/have_binlog_format_mixed.inc +--source include/have_tokudb.inc +let $engine_type=TokuDB; +--source suite/rpl/include/rpl_mixed_ddl.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_dml-master.opt b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_dml-master.opt new file mode 100644 index 00000000000..fd3de58d816 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_dml-master.opt @@ -0,0 +1,2 @@ +--tokudb_pk_insert_mode=2 + diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_dml.test b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_dml.test new file mode 100644 index 00000000000..c27625abd7f --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_tokudb_mixed_dml.test @@ -0,0 +1,9 @@ +######################################### +# Purpose: testing the replication in mixed mode +# Requirements: define binlog format for mysqld as in example below: +# ./mysql-test-run.pl --mysqld=--binlog-format=mixed +######################################### +--source include/have_binlog_format_mixed.inc +--source include/have_tokudb.inc +let $engine_type=TokuDB; +--source suite/rpl/include/rpl_mixed_dml.inc diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_truncate_3tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_truncate_3tokudb.test new file mode 100644 index 00000000000..8c2cf7ca4ba --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_truncate_3tokudb.test @@ -0,0 +1,4 @@ +--source include/have_tokudb.inc +--source include/not_ndb_default.inc +let $engine=TokuDB; +--source extra/rpl_tests/rpl_truncate.test diff --git a/storage/tokudb/mysql-test/rpl/t/rpl_typeconv_tokudb.test b/storage/tokudb/mysql-test/rpl/t/rpl_typeconv_tokudb.test new file mode 100644 index 00000000000..0f73e60f278 --- /dev/null +++ b/storage/tokudb/mysql-test/rpl/t/rpl_typeconv_tokudb.test @@ -0,0 +1,26 @@ +--source include/have_binlog_format_row.inc +--source include/have_tokudb.inc +--source include/master-slave.inc + +# +# BUG#49618: Field length stored incorrectly in binary log for InnoDB +# + +connection slave; +SET @saved_slave_type_conversions = @@GLOBAL.SLAVE_TYPE_CONVERSIONS; +SET GLOBAL SLAVE_TYPE_CONVERSIONS = ''; + +connection master; +CREATE TABLE t1(b1 BIT(1), b2 BIT(2), b3 BIT(3)) ENGINE=TokuDB; +INSERT INTO t1 VALUES (b'0', b'01', b'101'); +sync_slave_with_master; + +let $diff_tables= master:t1, slave:t1; +source include/diff_tables.inc; + +connection master; +DROP TABLE t1; +sync_slave_with_master; + +SET GLOBAL SLAVE_TYPE_CONVERSIONS = @saved_slave_type_conversions; +--source include/rpl_end.inc diff --git a/storage/tokudb/mysql-test/rpl/t/tokudb_innodb_xa_crash.test b/storage/tokudb/mysql-test/rpl/t/tokudb_innodb_xa_crash.test index 07b117947a0..97818a597e2 100644 --- a/storage/tokudb/mysql-test/rpl/t/tokudb_innodb_xa_crash.test +++ b/storage/tokudb/mysql-test/rpl/t/tokudb_innodb_xa_crash.test @@ -1,6 +1,6 @@ +--source include/master-slave.inc --source include/have_tokudb.inc --source include/have_innodb.inc ---source include/master-slave.inc eval CREATE TABLE t1(`a` INT) ENGINE=TokuDB; eval CREATE TABLE t2(`a` INT) ENGINE=InnoDB; |