| 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/rpl/include/ |
Upload File : |
#
# ==== Purpose ====
#
# Run concurrent split alter on given storage engine
# With concurrent 10 connections
#
# ==== Usage ====
#
# --let $alter_engine= Engine Name (myisam , innodb ...)
# --let $alter_algorithm= ...
# --let $alter_online = [][ONLINE]
# --let $domain_1=
# --let $domain_2=
# --let $M_port= //Master port
# --let $S_port= //Slave port
# --let $sync_slave= // 0/1 whether to sync slave with master or not
#
--connection master_node
set global debug_dbug="+d,start_alter_delay_master";
--let $i= 1
while($i < 11)
{
if($i == 1 && $domain_1)
{
--eval set gtid_domain_id= $domain_1;
}
if($i == 6 && $domain_2)
{
--eval set gtid_domain_id= $domain_2;
}
--eval create table t$i( a int primary key, b int) engine=$alter_engine
--eval insert into t$i values(1,1),(2,2)
--inc $i
}
if ($sync_slave)
{
--echo # Sync slave
--source include/save_master_gtid.inc
--connection slave_node
--source include/sync_with_master_gtid.inc
--connection master_node
}
--let $i= 1
while($i < 21)
{
if($i == 1 || $i == 11)
{
if($domain_1)
{
--eval set global gtid_domain_id= $domain_1;
}
}
if($i == 6 || $i == 16)
{
if($domain_2)
{
--eval set global gtid_domain_id= $domain_2;
}
}
connect(con$i,127.0.0.1,root,,$db_name, $M_port);
--inc $i
}
--let $i= 1
while($i < 11)
{
--connection con$i
--send_eval alter $alter_online table t$i add column c int, force, algorithm=$alter_algorithm
--inc $i
}
--connection master_node
set DEBUG_SYNC= "now signal alter_cont";
--let $i= 1
while($i < 11)
{
--connection con$i
--reap
--inc $i
}
--connection master_node
set DEBUG_SYNC= 'RESET';
if ($sync_slave)
{
--echo # Sync slave
--source include/save_master_gtid.inc
--connection slave_node
--source include/sync_with_master_gtid.inc
--connection master_node
}
--echo # Concurrent DML
--let $i= 1
while($i < 11)
{
--connection con$i
--send_eval alter table t$i add column d int, force, algorithm=$alter_algorithm
--inc $i
}
if ($alter_algorithm == "inplace")
{
--sleep 1
--let $i= 11
--let $j= 1
while($i < 21)
{
--connection con$i
--send_eval insert into t$j values(5,5,5);
--inc $i
--inc $j
}
--let $i= 11
while($i < 21)
{
--connection con$i
--reap
--inc $i
}
if ($sync_slave)
{
--echo # Sync slave
--source include/save_master_gtid.inc
--connection slave_node
--source include/sync_with_master_gtid.inc
--connection master_node
}
}
--connection master_node
set DEBUG_SYNC= "now signal alter_cont";
--let $i= 1
while($i < 11)
{
--connection con$i
--reap
--inc $i
}
--connection master_node
set DEBUG_SYNC= 'RESET';
if ($sync_slave)
{
--echo # Sync slave
--source include/save_master_gtid.inc
--connection slave_node
--source include/sync_with_master_gtid.inc
--connection master_node
}
--echo # Rollback tests
--let $i= 1
while($i < 11)
{
--connection con$i
--eval insert into t$i values(3,2,1,1)
--send_eval alter table t$i change b b int unique, force, algorithm=$alter_algorithm
--inc $i
}
--connection master_node
set DEBUG_SYNC= "now signal alter_cont";
--let $i= 1
while ($i < 11)
{
--connection con$i
--error ER_DUP_ENTRY
--reap
--inc $i
}
--connection master_node
set DEBUG_SYNC= 'RESET';
if ($sync_slave)
{
--echo # Sync slave
--source include/save_master_gtid.inc
--connection slave_node
--source include/sync_with_master_gtid.inc
--connection master_node
}
if ($sync_slave)
{
--enable_query_log
--echo # diff_table of master and slave , we will do only in the case when
--echo # sync_slave is on
--let $i= 1
while($i < 11)
{
--let $diff_tables= master_node:t$i, slave_node:t$i
source include/diff_tables.inc;
--inc $i
}
--disable_query_log
}
--connection master_node
drop table t1,t2,t3,t4,t5,t6,t7,t8,t9,t10;
if ($sync_slave)
{
--echo # Sync slave
--source include/save_master_gtid.inc
--connection slave_node
--source include/sync_with_master_gtid.inc
--connection master_node
}
--let $i= 1
while ($i < 21)
{
--disconnect con$i
--inc $i
}
--connection master_node
SET GLOBAL debug_dbug= "";