mirror of
https://github.com/MariaDB/server.git
synced 2025-01-18 13:02:28 +01:00
Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-new-rpl
This commit is contained in:
commit
6a51e0f8a2
86 changed files with 207 additions and 116 deletions
|
@ -2,8 +2,6 @@
|
|||
# Test updated to use a wrapper #
|
||||
#################################
|
||||
|
||||
-- source include/master-slave.inc
|
||||
|
||||
eval CREATE TABLE t1 (a INT) ENGINE=$engine_type;
|
||||
|
||||
begin;
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
# (not internally row-per-row but more like a TRUNCATE, MyISAM
|
||||
# supports that), is replicated (BUG#13576).
|
||||
|
||||
-- source include/master-slave.inc
|
||||
|
||||
eval create table t1 (a int, b int) engine=$engine_type;
|
||||
insert into t1 values(1,1);
|
||||
sync_slave_with_master;
|
||||
|
|
|
@ -5,8 +5,6 @@
|
|||
# Slave needs to be started with --innodb to store table in InnoDB.
|
||||
# Same test for MyISAM (which had no bug).
|
||||
|
||||
-- source include/master-slave.inc
|
||||
|
||||
eval CREATE TABLE t1 (
|
||||
a int unsigned not null auto_increment primary key,
|
||||
b int unsigned,
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
# Requires statement logging
|
||||
-- source include/master-slave.inc
|
||||
|
||||
# Clean up old slave's binlogs.
|
||||
# The slave is started with --log-slave-updates
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
# some replicate-* rules exist.
|
||||
# (BUG#7011)
|
||||
|
||||
source include/master-slave.inc;
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists t1,t2;
|
||||
--enable_warnings
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
-- source include/master-slave.inc
|
||||
|
||||
##############################################################################
|
||||
#
|
||||
# Let's verify that multi-update with a subselect does not cause the slave to crash
|
||||
|
|
|
@ -8,8 +8,6 @@
|
|||
# The slave is started with max_binlog_size=16384 bytes,
|
||||
# to force many rotations (approximately 30 rotations)
|
||||
|
||||
-- source include/master-slave.inc
|
||||
|
||||
# We have to sync with master, to ensure slave had time to start properly
|
||||
# before we stop it. If not, we get errors about UNIX_TIMESTAMP() in the log.
|
||||
connection master;
|
||||
|
|
|
@ -1,6 +1,3 @@
|
|||
-- source include/master-slave.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
|
||||
CREATE TABLE t1 (word CHAR(20) NOT NULL);
|
||||
LOAD DATA INFILE '../std_data_ln/words.dat' INTO TABLE t1;
|
||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||
|
|
|
@ -5,10 +5,6 @@
|
|||
# TEST: To test the UUID() in rbr #
|
||||
#############################################################################
|
||||
|
||||
# Includes
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
|
||||
# Begin clean up test section
|
||||
connection master;
|
||||
|
||||
|
|
|
@ -1,6 +1,3 @@
|
|||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
|
||||
#
|
||||
# Basic tests of row-level logging
|
||||
#
|
||||
|
|
|
@ -5,10 +5,6 @@
|
|||
# correctly.
|
||||
################################################
|
||||
|
||||
# Includes
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
|
||||
# Pre test clean up section
|
||||
connection master;
|
||||
--disable_warnings
|
||||
|
|
|
@ -1,10 +1,6 @@
|
|||
# Replication of character sets.
|
||||
# This test will fail if the server/client does not support enough charsets.
|
||||
|
||||
# Requires statement logging
|
||||
-- source include/have_binlog_format_row.inc
|
||||
|
||||
-- source include/master-slave.inc
|
||||
--disable_warnings
|
||||
set timestamp=1000000000;
|
||||
drop database if exists mysqltest2;
|
||||
|
|
|
@ -18,11 +18,6 @@
|
|||
# Vs slave. #
|
||||
#############################################################################
|
||||
|
||||
# Includes
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
|
||||
|
||||
# Begin clean up test section
|
||||
connection master;
|
||||
--disable_warnings
|
||||
|
|
|
@ -3,11 +3,6 @@
|
|||
# Original Date: Aug/13/2005 Created from Bug 12335 #
|
||||
#############################################################################
|
||||
|
||||
# Includes
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
|
||||
|
||||
# Begin clean up test section
|
||||
connection master;
|
||||
--disable_warnings
|
||||
|
|
|
@ -8,10 +8,6 @@
|
|||
# to populate a table with data from the first table. #
|
||||
#############################################################################
|
||||
|
||||
# Includes
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
|
||||
# Begin clean up test section
|
||||
connection master;
|
||||
--disable_warnings
|
||||
|
|
|
@ -11,6 +11,7 @@ drop table if exists t1, t2;
|
|||
flush tables;
|
||||
--require r/true.require
|
||||
select (support = 'YES' or support = 'DEFAULT') as `TRUE` from information_schema.engines where engine = 'ndbcluster';
|
||||
--source include/ndb_not_readonly.inc
|
||||
enable_query_log;
|
||||
|
||||
# Check that server2 has NDB support
|
||||
|
@ -22,11 +23,8 @@ drop table if exists t1, t2;
|
|||
flush tables;
|
||||
--require r/true.require
|
||||
select (support = 'YES' or support = 'DEFAULT') as `TRUE` from information_schema.engines where engine = 'ndbcluster';
|
||||
--source include/ndb_not_readonly.inc
|
||||
enable_query_log;
|
||||
|
||||
# Check should be here as well...
|
||||
# # Check that second master mysqld has come out of redonly mode
|
||||
# --source include/ndb_not_readonly.inc
|
||||
|
||||
# Set the default connection to 'server1'
|
||||
connection server1;
|
||||
|
|
|
@ -2,8 +2,5 @@
|
|||
disable_query_log;
|
||||
--require r/true.require
|
||||
select (support = 'YES' or support = 'DEFAULT') as `TRUE` from information_schema.engines where engine = 'ndbcluster';
|
||||
--source include/ndb_not_readonly.inc
|
||||
enable_query_log;
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
12
mysql-test/include/ndb_master-slave.inc
Normal file
12
mysql-test/include/ndb_master-slave.inc
Normal file
|
@ -0,0 +1,12 @@
|
|||
connect (master,127.0.0.1,root,,test,$MASTER_MYPORT,);
|
||||
connect (master1,127.0.0.1,root,,test,$MASTER_MYPORT,);
|
||||
connect (slave,127.0.0.1,root,,test,$SLAVE_MYPORT,);
|
||||
connect (slave1,127.0.0.1,root,,test,$SLAVE_MYPORT,);
|
||||
|
||||
connection slave;
|
||||
-- source include/have_ndb.inc
|
||||
|
||||
-- source include/master-slave-reset.inc
|
||||
|
||||
# Set the default connection to 'master'
|
||||
connection master;
|
|
@ -1,31 +1,27 @@
|
|||
# Check that server has come out ot readonly mode
|
||||
--disable_query_log
|
||||
let $counter= 100;
|
||||
#
|
||||
# wait for server to connect properly to cluster
|
||||
#
|
||||
--error 0,ER_NO_SUCH_TABLE,ER_OPEN_AS_READONLY,ER_GET_ERRMSG,ER_KEY_NOT_FOUND
|
||||
delete from mysql.ndb_apply_status where server_id=0;
|
||||
let $mysql_errno= 1;
|
||||
let $counter= 600;
|
||||
while ($mysql_errno)
|
||||
{
|
||||
--error 0, 1005
|
||||
create table check_read_only(a int) engine=NDB;
|
||||
sleep 0.1;
|
||||
if (!$counter)
|
||||
# Table is readonly until the mysqld has connected properly
|
||||
--error 0,ER_NO_SUCH_TABLE,ER_OPEN_AS_READONLY,ER_GET_ERRMSG
|
||||
replace into mysql.ndb_apply_status values(0,0,"",0,0);
|
||||
if ($mysql_errno)
|
||||
{
|
||||
die("Failed while waiting for mysqld to come out of readonly mode");
|
||||
if (!$counter)
|
||||
{
|
||||
die("Failed while waiting for mysqld to come out of readonly mode");
|
||||
}
|
||||
dec $counter;
|
||||
--sleep 0.1
|
||||
}
|
||||
dec $counter;
|
||||
}
|
||||
|
||||
let $counter= 100;
|
||||
let $mysql_errno= 1;
|
||||
while ($mysql_errno)
|
||||
{
|
||||
--error 0, 1036
|
||||
insert into check_read_only values(1);
|
||||
sleep 0.1;
|
||||
if (!$counter)
|
||||
{
|
||||
die("Failed while waiting for mysqld to come out of readonly mode");
|
||||
}
|
||||
dec $counter;
|
||||
}
|
||||
drop table check_read_only;
|
||||
--enable_query_log
|
||||
delete from mysql.ndb_apply_status where server_id=0;
|
||||
#
|
||||
# connected
|
||||
#
|
||||
|
|
|
@ -7,5 +7,6 @@
|
|||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=innodb;
|
||||
-- source extra/rpl_tests/rpl_commit_after_flush.test
|
||||
|
|
|
@ -2,5 +2,6 @@
|
|||
# By JBM 2006-02-14 added to skip test when NDB #
|
||||
##################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=myisam;
|
||||
-- source extra/rpl_tests/rpl_delete_no_where.test
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
#####################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=innodb;
|
||||
let $engine_type2=myisam;
|
||||
-- source extra/rpl_tests/rpl_insert_ignore.test
|
||||
|
|
|
@ -5,5 +5,6 @@
|
|||
# Default engine. #
|
||||
#######################################################
|
||||
--source include/not_ndb_default.inc
|
||||
--source include/master-slave.inc
|
||||
let $engine_type=MyISAM;
|
||||
--source extra/rpl_tests/rpl_multi_update2.test
|
||||
|
|
|
@ -5,5 +5,6 @@
|
|||
# Default engine. #
|
||||
#######################################################
|
||||
--source include/not_ndb_default.inc
|
||||
--source include/master-slave.inc
|
||||
let $engine_type=MyISAM;
|
||||
-- source extra/rpl_tests/rpl_multi_update3.test
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
# test and to have control over the tests.
|
||||
##############################################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/master-slave.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
connection slave;
|
||||
-- source include/have_innodb.inc
|
||||
connection master;
|
||||
|
|
|
@ -8,6 +8,6 @@
|
|||
# test and to have control over the tests.
|
||||
##############################################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/master-slave.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
SET storage_engine=ndb;
|
||||
--source extra/rpl_tests/rpl_ndb_2multi_eng.test
|
||||
|
|
|
@ -2,5 +2,7 @@
|
|||
# By JBM 2005-02-15 Wrapped to allow reuse of test code#
|
||||
########################################################
|
||||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
--source extra/rpl_tests/rpl_row_UUID.test
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
# Change: Augmented test to use with cluster
|
||||
#####################################
|
||||
--source include/have_ndb.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/have_binlog_format_mixed_or_row.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
--echo ***************** Test 1 ************************
|
||||
--echo
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_ndb_extra.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
# kill any trailing processes
|
||||
--system killall lt-bankTransactionMaker lt-bankTimer lt-bankMakeGL || true
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
#
|
||||
# basic test of blob replication for NDB
|
||||
|
|
|
@ -4,6 +4,8 @@
|
|||
# code between engine tests #
|
||||
#################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDBCLUSTER;
|
||||
-- source extra/rpl_tests/rpl_row_blob.test
|
||||
|
||||
|
|
|
@ -2,5 +2,7 @@
|
|||
# By JBM 2005-02-15 Wrapped to allow reuse of test code#
|
||||
########################################################
|
||||
--source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_row_charset.test
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
# set up circular replication
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
connection master;
|
||||
CREATE TABLE t1 (a int key, b int) ENGINE=NDB;
|
||||
|
|
|
@ -6,5 +6,6 @@
|
|||
#####################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_commit_after_flush.test
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
--source include/not_embedded.inc
|
||||
--source include/big_test.inc
|
||||
#--source include/have_ndb_extra.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
#### Test start cleanup section #####
|
||||
--disable_warnings
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1;
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
--echo --- Doing pre test cleanup ---
|
||||
|
||||
|
|
|
@ -23,9 +23,9 @@
|
|||
# abort of the test case etc..
|
||||
#
|
||||
|
||||
--source include/master-slave.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
let $engine_type= NDB;
|
||||
let $temp_engine_type= MEMORY;
|
||||
let $show_binlog = 0;
|
||||
|
|
|
@ -4,5 +4,6 @@
|
|||
#########################################
|
||||
--source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_delete_no_where.test
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS replica;
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1, t2;
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
# Using NDB
|
||||
###########################################
|
||||
-- source include/have_binlog_format_row.inc
|
||||
--source include/have_ndb.inc
|
||||
-- source include/master-slave.inc
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type = 'NDB';
|
||||
-- source extra/rpl_tests/rpl_extraSlave_Col.test
|
||||
|
||||
|
|
|
@ -7,6 +7,8 @@
|
|||
# reduce test case code #
|
||||
###################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_row_func003.test
|
||||
-- source include/master-slave-end.inc
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
#
|
||||
# Currently test only works with ndb since it retrieves "old"
|
||||
|
|
|
@ -7,10 +7,8 @@
|
|||
# to be able to use the same code for all these different
|
||||
# test and to have control over the tests.
|
||||
##############################################################
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/master-slave.inc
|
||||
connection slave;
|
||||
-- source include/have_ndb.inc
|
||||
connection master;
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
SET storage_engine=innodb;
|
||||
--source extra/rpl_tests/rpl_ndb_2multi_eng.test
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/master-slave.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
|
||||
create table t1 (a int, unique(a)) engine=ndbcluster;
|
||||
create table t2 (a int, unique(a)) engine=innodb;
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
#####################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
let $engine_type2=myisam;
|
||||
-- source extra/rpl_tests/rpl_insert_ignore.test
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_ndb_extra.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
--disable_warnings
|
||||
# reset master
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
###################################
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_log.test
|
||||
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_multi_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
# note: server2 is another "master" connected to the master cluster
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
# Run this only for row based replication, as replication of
|
||||
# auto_increment values are not supported with NDB as storage engine
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
|
||||
let $engine_type=NDB;
|
||||
--source extra/rpl_tests/rpl_multi_update2.test
|
||||
|
|
|
@ -4,5 +4,6 @@
|
|||
############################################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_multi_update3.test
|
||||
|
|
|
@ -7,9 +7,6 @@
|
|||
# to be able to use the same code for all these different
|
||||
# test and to have control over the tests.
|
||||
##############################################################
|
||||
-- source include/master-slave.inc
|
||||
connection slave;
|
||||
--source include/have_ndb.inc
|
||||
connection master;
|
||||
-- source include/ndb_master-slave.inc
|
||||
SET storage_engine=myisam;
|
||||
--source extra/rpl_tests/rpl_ndb_2multi_eng.test
|
||||
|
|
|
@ -4,5 +4,6 @@
|
|||
############################################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_ndb_extra.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_relayrotate.test
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
--source include/have_ndb.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
--disable_warnings
|
||||
DROP DATABASE IF EXISTS replica;
|
||||
|
|
|
@ -2,5 +2,7 @@
|
|||
# By JBM 2005-02-15 Wrapped to allow reuse of test code#
|
||||
########################################################
|
||||
--source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_row_001.test
|
||||
|
|
|
@ -5,5 +5,7 @@
|
|||
# For different engines #
|
||||
#################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDBCLUSTER;
|
||||
-- source extra/rpl_tests/rpl_row_sp003.test
|
||||
|
|
|
@ -5,5 +5,7 @@
|
|||
# For different engines #
|
||||
#################################
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDBCLUSTER;
|
||||
-- source extra/rpl_tests/rpl_row_sp006.test
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
--source include/have_ndb.inc
|
||||
--source include/have_innodb.inc
|
||||
--source include/have_binlog_format_mixed_or_statement.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
--connection master
|
||||
create table t1 (a int key, b int) engine innodb;
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
--source include/ndb_default_cluster.inc
|
||||
--source include/not_embedded.inc
|
||||
--source include/have_binlog_format_row.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
|
||||
#
|
||||
# Currently test only works with ndb since it retrieves "old"
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
# Includes
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/have_ndb.inc
|
||||
-- source include/master-slave.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
let $engine_type=NDB;
|
||||
-- source extra/rpl_tests/rpl_trig004.test
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
-- source include/have_ndbapi_examples.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
|
||||
--exec echo Running ndbapi_simple_dual
|
||||
--exec $NDB_EXAMPLES_DIR/ndbapi_simple_dual/ndbapi_simple_dual $MASTER_MYSOCK "localhost:$NDBCLUSTER_PORT" $SLAVE_MYSOCK "localhost:$NDBCLUSTER_PORT_SLAVE" >> $NDB_EXAMPLES_OUTPUT
|
||||
|
|
|
@ -6,5 +6,6 @@
|
|||
#######################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=innodb;
|
||||
-- source extra/rpl_tests/rpl_relayrotate.test
|
||||
|
|
|
@ -3,5 +3,7 @@
|
|||
# Added to skip if ndb is default #
|
||||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=MYISAM;
|
||||
-- source extra/rpl_tests/rpl_row_001.test
|
||||
|
|
|
@ -3,5 +3,7 @@
|
|||
# Added to skip if ndb is default #
|
||||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=myisam;
|
||||
--source extra/rpl_tests/rpl_row_UUID.test
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
|
||||
let $type= 'MYISAM' ;
|
||||
let $extra_index= ;
|
||||
-- source extra/rpl_tests/rpl_row_basic.test
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
-- source include/have_innodb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
|
||||
let $type= 'INNODB' ;
|
||||
let $extra_index= ;
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
-- source include/have_ndb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/ndb_master-slave.inc
|
||||
|
||||
let $type= 'NDB' ;
|
||||
let $extra_index= ;
|
||||
-- source extra/rpl_tests/rpl_row_basic.test
|
||||
|
|
|
@ -7,6 +7,8 @@
|
|||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=InnoDB;
|
||||
-- source extra/rpl_tests/rpl_row_blob.test
|
||||
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
# Added to skip if ndb is default #
|
||||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=myisam;
|
||||
-- source extra/rpl_tests/rpl_row_blob.test
|
||||
|
||||
|
|
|
@ -3,5 +3,7 @@
|
|||
# Added to skip if ndb is default #
|
||||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=myisam;
|
||||
-- source extra/rpl_tests/rpl_row_charset.test
|
||||
|
|
|
@ -7,5 +7,7 @@
|
|||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=INNODB;
|
||||
-- source extra/rpl_tests/rpl_row_func003.test
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=MyISAM;
|
||||
-- source extra/rpl_tests/rpl_log.test
|
||||
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=InnoDB;
|
||||
-- source extra/rpl_tests/rpl_log.test
|
||||
|
||||
|
|
|
@ -7,5 +7,7 @@
|
|||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=INNODB;
|
||||
-- source extra/rpl_tests/rpl_row_sp003.test
|
||||
|
|
|
@ -7,5 +7,7 @@
|
|||
########################################################
|
||||
-- source include/not_ndb_default.inc
|
||||
-- source include/have_innodb.inc
|
||||
-- source include/have_binlog_format_row.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=InnoDB;
|
||||
-- source extra/rpl_tests/rpl_row_sp006.test
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# Requires statement logging
|
||||
-- source include/have_binlog_format_mixed_or_statement.inc
|
||||
-- source include/master-slave.inc
|
||||
let $engine_type=MyISAM;
|
||||
-- source extra/rpl_tests/rpl_log.test
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
--source include/have_ndb.inc
|
||||
--source include/master-slave.inc
|
||||
--source include/ndb_master-slave.inc
|
||||
--source include/have_binlog_format_mixed_or_row.inc
|
||||
|
||||
--disable_query_log
|
||||
|
|
|
@ -776,7 +776,7 @@ static int ndbcluster_create_ndb_apply_status_table(THD *thd)
|
|||
" end_pos BIGINT UNSIGNED NOT NULL, "
|
||||
" PRIMARY KEY USING HASH (server_id) ) ENGINE=NDB");
|
||||
|
||||
const int no_print_error[2]= {701, 0}; // do not print error 701
|
||||
const int no_print_error[3]= {701, 4009, 0}; // do not print error 701 etc
|
||||
run_query(thd, buf, end, no_print_error, TRUE);
|
||||
|
||||
DBUG_RETURN(0);
|
||||
|
@ -833,7 +833,7 @@ static int ndbcluster_create_schema_table(THD *thd)
|
|||
" type INT UNSIGNED NOT NULL,"
|
||||
" PRIMARY KEY USING HASH (db,name) ) ENGINE=NDB");
|
||||
|
||||
const int no_print_error[2]= {701, 0}; // do not print error 701
|
||||
const int no_print_error[3]= {701, 4009, 0}; // do not print error 701 etc
|
||||
run_query(thd, buf, end, no_print_error, TRUE);
|
||||
|
||||
DBUG_RETURN(0);
|
||||
|
|
|
@ -5,7 +5,7 @@ Next DBACC 3002
|
|||
Next DBTUP 4029
|
||||
Next DBLQH 5045
|
||||
Next DBDICT 6007
|
||||
Next DBDIH 7183
|
||||
Next DBDIH 7184
|
||||
Next DBTC 8040
|
||||
Next CMVMI 9000
|
||||
Next BACKUP 10038
|
||||
|
@ -75,6 +75,8 @@ Delay GCP_SAVEREQ by 10 secs
|
|||
|
||||
7180: Crash master during master-take-over in execMASTER_LCPCONF
|
||||
|
||||
7183: Crash when receiving COPY_GCIREQ
|
||||
|
||||
ERROR CODES FOR TESTING NODE FAILURE, LOCAL CHECKPOINT HANDLING:
|
||||
-----------------------------------------------------------------
|
||||
|
||||
|
|
|
@ -747,6 +747,8 @@ done:
|
|||
}
|
||||
ndbrequire(ok);
|
||||
|
||||
CRASH_INSERTION(7183);
|
||||
|
||||
/* ----------------------------------------------------------------------- */
|
||||
/* WE START BY TRYING TO OPEN THE FIRST RESTORABLE GCI FILE. */
|
||||
/* ----------------------------------------------------------------------- */
|
||||
|
@ -1230,6 +1232,17 @@ void Dbdih::execDIH_RESTARTREQ(Signal* signal)
|
|||
Uint32 ng = Sysfile::getNodeGroup(i, SYSFILE->nodeGroups);
|
||||
ndbrequire(ng < MAX_NDB_NODES);
|
||||
Uint32 gci = node_gcis[i];
|
||||
if (gci < SYSFILE->lastCompletedGCI[i])
|
||||
{
|
||||
jam();
|
||||
/**
|
||||
* Handle case, where *I* know that node complete GCI
|
||||
* but node does not...bug#29167
|
||||
* i.e node died before it wrote own sysfile
|
||||
*/
|
||||
gci = SYSFILE->lastCompletedGCI[i];
|
||||
}
|
||||
|
||||
if (gci > node_group_gcis[ng])
|
||||
{
|
||||
jam();
|
||||
|
|
|
@ -1869,6 +1869,11 @@ Pgman::free_data_file(Uint32 file_no, Uint32 fd)
|
|||
int
|
||||
Pgman::drop_page(Ptr<Page_entry> ptr)
|
||||
{
|
||||
#ifdef VM_TRACE
|
||||
debugOut << "PGMAN: drop_page" << endl;
|
||||
debugOut << "PGMAN: " << ptr << endl;
|
||||
#endif
|
||||
|
||||
Page_stack& pl_stack = m_page_stack;
|
||||
Page_queue& pl_queue = m_page_queue;
|
||||
|
||||
|
@ -1881,8 +1886,14 @@ Pgman::drop_page(Ptr<Page_entry> ptr)
|
|||
if (state & Page_entry::ONSTACK)
|
||||
{
|
||||
jam();
|
||||
bool at_bottom = ! pl_stack.hasPrev(ptr);
|
||||
pl_stack.remove(ptr);
|
||||
state &= ~ Page_entry::ONSTACK;
|
||||
if (at_bottom && (state & Page_entry::HOT))
|
||||
{
|
||||
jam();
|
||||
lirs_stack_prune();
|
||||
}
|
||||
}
|
||||
|
||||
if (state & Page_entry::ONQUEUE)
|
||||
|
@ -2296,6 +2307,13 @@ operator<<(NdbOut& out, Ptr<Pgman::Page_entry> ptr)
|
|||
out << " lsn=" << dec << pe.m_lsn;
|
||||
out << " busy_count=" << dec << pe.m_busy_count;
|
||||
#ifdef VM_TRACE
|
||||
{
|
||||
Pgman::Page_stack& pl_stack = pe.m_this->m_page_stack;
|
||||
if (! pl_stack.hasNext(ptr))
|
||||
out << " top";
|
||||
if (! pl_stack.hasPrev(ptr))
|
||||
out << " bottom";
|
||||
}
|
||||
{
|
||||
Pgman::Local_page_request_list
|
||||
req_list(ptr.p->m_this->m_page_request_pool, ptr.p->m_requests);
|
||||
|
|
|
@ -1219,6 +1219,48 @@ runBug24664(NDBT_Context* ctx, NDBT_Step* step)
|
|||
return result;
|
||||
}
|
||||
|
||||
int
|
||||
runBug29167(NDBT_Context* ctx, NDBT_Step* step)
|
||||
{
|
||||
int result = NDBT_OK;
|
||||
NdbRestarter restarter;
|
||||
Ndb* pNdb = GETNDB(step);
|
||||
const Uint32 nodeCount = restarter.getNumDbNodes();
|
||||
|
||||
if (nodeCount < 2)
|
||||
return NDBT_OK;
|
||||
|
||||
int filter[] = { 15, NDB_MGM_EVENT_CATEGORY_CHECKPOINT, 0 };
|
||||
NdbLogEventHandle handle =
|
||||
ndb_mgm_create_logevent_handle(restarter.handle, filter);
|
||||
|
||||
struct ndb_logevent event;
|
||||
int master = restarter.getMasterNodeId();
|
||||
do {
|
||||
int node1 = restarter.getRandomNodeOtherNodeGroup(master, rand());
|
||||
int node2 = restarter.getRandomNodeSameNodeGroup(node1, rand());
|
||||
|
||||
int val2[] = { DumpStateOrd::CmvmiSetRestartOnErrorInsert, 1 };
|
||||
restarter.dumpStateAllNodes(val2, 2);
|
||||
int dump[] = { DumpStateOrd::DihSetTimeBetweenGcp, 30000 };
|
||||
restarter.dumpStateAllNodes(dump, 2);
|
||||
|
||||
while(ndb_logevent_get_next(handle, &event, 0) >= 0 &&
|
||||
event.type != NDB_LE_GlobalCheckpointCompleted);
|
||||
|
||||
CHECK(restarter.insertErrorInAllNodes(932) == 0);
|
||||
|
||||
CHECK(restarter.insertErrorInNode(node1, 7183) == 0);
|
||||
CHECK(restarter.insertErrorInNode(node2, 7183) == 0);
|
||||
|
||||
CHECK(restarter.waitClusterNoStart() == 0);
|
||||
restarter.startAll();
|
||||
CHECK(restarter.waitClusterStarted() == 0);
|
||||
} while(false);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
NDBT_TESTSUITE(testSystemRestart);
|
||||
TESTCASE("SR1",
|
||||
"Basic system restart test. Focus on testing restart from REDO log.\n"
|
||||
|
@ -1399,6 +1441,12 @@ TESTCASE("Bug24664",
|
|||
STEP(runBug24664);
|
||||
FINALIZER(runClearTable);
|
||||
}
|
||||
TESTCASE("Bug29167", "")
|
||||
{
|
||||
INITIALIZER(runWaitStarted);
|
||||
STEP(runBug29167);
|
||||
}
|
||||
|
||||
NDBT_TESTSUITE_END(testSystemRestart);
|
||||
|
||||
int main(int argc, const char** argv){
|
||||
|
|
|
@ -485,6 +485,10 @@ max-time: 1000
|
|||
cmd: testNodeRestart
|
||||
args: -n Bug27003 T1
|
||||
|
||||
max-time: 300
|
||||
cmd: testSystemRestart
|
||||
args: -n Bug29167 T1
|
||||
|
||||
max-time: 1000
|
||||
cmd: testNodeRestart
|
||||
args: -n Bug27283 T1
|
||||
|
|
Loading…
Reference in a new issue