Skip to content

Commit

Permalink
Merge branch '10.0-galera' into 10.1
Browse files Browse the repository at this point in the history
  • Loading branch information
Nirbhay Choubey committed Sep 28, 2016
2 parents 735a4a1 + c9ded85 commit e1c6f28
Show file tree
Hide file tree
Showing 6 changed files with 79 additions and 2 deletions.
22 changes: 22 additions & 0 deletions mysql-test/suite/wsrep/r/wsrep_rpl.result
@@ -0,0 +1,22 @@
include/master-slave.inc
[connection master]
#
# MDEV-10714: Could not execute Delete_rows event on table;
# wsrep_max_ws_rows exceeded. Error_Code 1180
#
CREATE TABLE t1(i INT) ENGINE = INNODB;
SET @@GLOBAL.wsrep_max_ws_rows = 1;
INSERT INTO t1 VALUES(1), (2);
SELECT COUNT(*) = 2 FROM t1;
COUNT(*) = 2
1
SET @@GLOBAL.wsrep_max_ws_rows = 1;
DELETE FROM t1;
SELECT COUNT(*) = 0 FROM t1;
COUNT(*) = 0
1
DROP TABLE t1;
SET @@GLOBAL.wsrep_max_ws_rows = 0;
SET @@GLOBAL.wsrep_max_ws_rows = 0;
include/rpl_end.inc
# End of test.
1 change: 1 addition & 0 deletions mysql-test/suite/wsrep/t/wsrep_rpl.cnf
@@ -0,0 +1 @@
!include ../../rpl/my.cnf
50 changes: 50 additions & 0 deletions mysql-test/suite/wsrep/t/wsrep_rpl.test
@@ -0,0 +1,50 @@
--source include/have_wsrep.inc
--source include/have_innodb.inc
--source include/master-slave.inc

--echo #
--echo # MDEV-10714: Could not execute Delete_rows event on table;
--echo # wsrep_max_ws_rows exceeded. Error_Code 1180
--echo #
# Save wsrep_max_ws_rows on master and slave.
connection master;
let $wsrep_max_ws_rows_master = `SELECT @@GLOBAL.wsrep_max_ws_rows`;
connection slave;
let $wsrep_max_ws_rows_slave = `SELECT @@GLOBAL.wsrep_max_ws_rows`;

connection master;
CREATE TABLE t1(i INT) ENGINE = INNODB;

# Setting wsrep_max_ws_rows should have no impact on replication master
# unless its a cluster node.
SET @@GLOBAL.wsrep_max_ws_rows = 1;
INSERT INTO t1 VALUES(1), (2);

sync_slave_with_master;
SELECT COUNT(*) = 2 FROM t1;

connection slave;
# Setting wsrep_max_ws_rows should have no impact on replication slave
# unless its a cluster node.
SET @@GLOBAL.wsrep_max_ws_rows = 1;

connection master;
DELETE FROM t1;

sync_slave_with_master;
SELECT COUNT(*) = 0 FROM t1;

connection master;
DROP TABLE t1;

sync_slave_with_master;

# Restore wsrep_max_ws_rows on master and slave
connection master;
eval SET @@GLOBAL.wsrep_max_ws_rows = $wsrep_max_ws_rows_master;
connection slave;
eval SET @@GLOBAL.wsrep_max_ws_rows = $wsrep_max_ws_rows_slave;

--source include/rpl_end.inc
--echo # End of test.

2 changes: 1 addition & 1 deletion scripts/wsrep_sst_xtrabackup-v2.sh
Expand Up @@ -176,7 +176,7 @@ get_transfer()
fi
wsrep_log_info "Using netcat as streamer"
if [[ "$WSREP_SST_OPT_ROLE" == "joiner" ]];then
if nc -h | grep -q ncat;then
if nc -h 2>&1 | grep -q ncat;then
tcmd="nc -l ${TSST_PORT}"
else
tcmd="nc -dl ${TSST_PORT}"
Expand Down
2 changes: 1 addition & 1 deletion scripts/wsrep_sst_xtrabackup.sh
Expand Up @@ -149,7 +149,7 @@ get_transfer()
fi
wsrep_log_info "Using netcat as streamer"
if [[ "$WSREP_SST_OPT_ROLE" == "joiner" ]];then
if nc -h | grep -q ncat;then
if nc -h 2>&1 | grep -q ncat;then
tcmd="nc -l ${TSST_PORT}"
else
tcmd="nc -dl ${TSST_PORT}"
Expand Down
4 changes: 4 additions & 0 deletions sql/handler.cc
Expand Up @@ -5881,6 +5881,10 @@ static int check_wsrep_max_ws_rows()
if (wsrep_max_ws_rows)
{
THD *thd= current_thd;

if (!WSREP(thd))
return 0;

thd->wsrep_affected_rows++;
if (thd->wsrep_exec_mode != REPL_RECV &&
thd->wsrep_affected_rows > wsrep_max_ws_rows)
Expand Down

0 comments on commit e1c6f28

Please sign in to comment.