403Webshell
Server IP : 88.99.149.37  /  Your IP : 216.73.216.141
Web Server : nginx/1.31.2
System : Linux server-88-99-149-37 6.12.0-124.56.5.el10_1.x86_64 #1 SMP PREEMPT_DYNAMIC Fri May 15 06:12:08 EDT 2026 x86_64
User : muralimurth ( 1015)
PHP Version : 8.4.23
Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/local/mysql/mysql-test/suite/multi_source/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/local/mysql/mysql-test/suite/multi_source/skip_counter.test
#
# Test of sql_slave_skip_counter and rpl_max_size
#

# Create a schema and a table i
# on the 1st master

--source include/not_embedded.inc
--let $rpl_server_count= 0

--connect (master1,127.0.0.1,root,,,$SERVER_MYPORT_1)

--disable_warnings
drop database if exists db;
--enable_warnings
create database db;
create table db.this_will_not_be_replicated (i int) engine=MyISAM;
create table db.t1 (i int) engine=MyISAM;
create table db.t2 (i int) engine=MyISAM;
--save_master_pos

# Create the same schema and another table
# on the 2nd master

--connect (master2,127.0.0.1,root,,,$SERVER_MYPORT_2)

--disable_warnings
drop database if exists db;
--enable_warnings
create database db;
create table db.t3 (i int) engine=MyISAM;

--connect (slave,127.0.0.1,root,,,$SERVER_MYPORT_3)

# Start replication from the first master

--replace_result $SERVER_MYPORT_1 MYPORT_1
eval change master 'master1' to
master_port=$SERVER_MYPORT_1,
master_host='127.0.0.1',
master_user='root',
master_use_gtid=no;

start slave 'master1';
set default_master_connection = 'master1';
--source include/wait_for_slave_to_start.inc
--sync_with_master 0,'master1'

# Start replication from the second master

set default_master_connection = 'master2';

--replace_result $SERVER_MYPORT_2 MYPORT_2
eval change master 'master2' to
master_port=$SERVER_MYPORT_2,
master_host='127.0.0.1',
master_user='root',
master_use_gtid=no;

# the schema creation will be replicated from the 1st master,
# so we want to skip it in the second replication connection
# The events we want to skip are:
#
# The start format statement event
# drop database if exists db
# create database db
# Create table db.t1
# - > 4 events in total

--let $skip_counter_saved = `select @@global.sql_slave_skip_counter`
--let $max_relay_log_size_saved= `select @@global.max_relay_log_size`
--let $max_binlog_size_saved= `select @@global.max_binlog_size`
set global sql_slave_skip_counter = 2;
select @@global.sql_slave_skip_counter;
select @@session.sql_slave_skip_counter;
set session sql_slave_skip_counter = 3;
select @@global.sql_slave_skip_counter;
select @@session.sql_slave_skip_counter;
set global sql_slave_skip_counter= default;
select @@global.sql_slave_skip_counter;
select @@session.sql_slave_skip_counter;
set global sql_slave_skip_counter= 4;

set default_master_connection = 'master1';
select @@session.sql_slave_skip_counter;
set default_master_connection = 'qqq';
select @@session.sql_slave_skip_counter;
set default_master_connection = 'master2';
select @@session.sql_slave_skip_counter;

# Test of setting max_relay_log_size
select @@global.max_relay_log_size;
set global max_relay_log_size = 1*1024*1024;
select @@global.max_relay_log_size;
select @@session.max_relay_log_size;
set session max_relay_log_size = 3*1024*1024;
select @@global.max_relay_log_size;
select @@session.max_relay_log_size;
set global max_relay_log_size= default;
select @@global.max_relay_log_size;
select @@session.max_relay_log_size;
set global max_relay_log_size= 3*1024*1024;
set default_master_connection = 'master1';
select @@session.max_relay_log_size;
set default_master_connection = 'qqq';
select @@session.max_relay_log_size;
set default_master_connection = 'master2';
select @@session.max_relay_log_size;
set global max_binlog_size= 4*1024*1024;
select @@global.max_relay_log_size;

start slave 'master2';
--source include/wait_for_slave_to_start.inc
set default_master_connection = '';

--connection master2
--save_master_pos

--connection slave

--sync_with_master 0,'master2'

# If the skip_counter worked as expected, we should
# get here (replication shouldn't have broken)
# and should see both tables here
# (drop database which came from master2 shouldn't have been executed
# so t1 should still exist)

show tables in db;

# Cleanup

drop database db;

--eval set global sql_slave_skip_counter = $skip_counter_saved
--eval set global max_relay_log_size = $max_relay_log_size_saved
--eval set global max_binlog_size = $max_binlog_size_saved

--source include/reset_master_slave.inc
--disconnect slave

--connection master1
drop database db;
--source include/reset_master_slave.inc
--disconnect master1

--connection master2
drop database db;
--source include/reset_master_slave.inc
--disconnect master2


Youez - 2016 - github.com/yon3zu
LinuXploit