source include/have_semisync_plugin.inc; source include/not_embedded.inc; source include/have_innodb.inc; source include/master-slave.inc; let $engine_type= InnoDB; --echo # 1. async repl connection master; eval create table t1 (a int) engine=$engine_type; --source include/sync_slave_sql_with_master.inc connection slave; source include/stop_slave.inc; --echo # 2. enable semi-sync plugins on master connection master; eval INSTALL PLUGIN rpl_semi_sync_master SONAME '$SEMISYNC_MASTER_PLUGIN'; set global rpl_semi_sync_master_timeout= 5000; set global rpl_semi_sync_master_enabled = 1; show variables like 'rpl_semi_sync_master_enabled'; --echo # 3. install semi-sync plugins on slave connection slave; eval INSTALL PLUGIN rpl_semi_sync_slave SONAME '$SEMISYNC_SLAVE_PLUGIN'; set global rpl_semi_sync_slave_enabled = 1; set global slave_compressed_protocol = 1; source include/start_slave.inc; --echo # 4. test compression with semi-sync plugins connection master; disable_query_log; let $i= 5; while ($i) { eval insert into t1 values ($i); dec $i; } enable_query_log; --source include/sync_slave_sql_with_master.inc connection slave; select count(*) from t1; --echo # 5. cleanup connection master; drop table t1; --source include/sync_slave_sql_with_master.inc connection slave; source include/stop_slave.inc; set global rpl_semi_sync_slave_enabled = 0; disable_warnings; error 0,1305; UNINSTALL PLUGIN rpl_semi_sync_slave; enable_warnings; connection master; set global rpl_semi_sync_master_enabled = 0; --source include/stop_dump_threads.inc disable_warnings; error 0,1305; UNINSTALL PLUGIN rpl_semi_sync_master; enable_warnings; connection slave; set global slave_compressed_protocol = 0; source include/start_slave.inc; connection master; --source include/rpl_end.inc