Permalink
Show file tree
Hide file tree
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
MDEV-25978 : rsync SST does not work with custom binlog name
wsrep_sst_common did not correctly set name for binlog index file if custom binlog name was used and this name was not added to script command line. Added test case for both log_basename and log_binlog.
- Loading branch information
Showing
8 changed files
with
248 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,96 @@ | ||
| connection node_1; | ||
| connection node_2; | ||
| Performing State Transfer on a server that has been shut down cleanly and restarted | ||
| connection node_1; | ||
| CREATE TABLE t1 (f1 CHAR(255)) ENGINE=InnoDB; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| COMMIT; | ||
| connection node_2; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| COMMIT; | ||
| Shutting down server ... | ||
| connection node_1; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| COMMIT; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| connect node_1a_galera_st_shutdown_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| connection node_2; | ||
| Starting server ... | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| COMMIT; | ||
| connection node_1; | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| COMMIT; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| COMMIT; | ||
| connection node_1a_galera_st_shutdown_slave; | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| ROLLBACK; | ||
| SELECT COUNT(*) = 35 FROM t1; | ||
| COUNT(*) = 35 | ||
| 1 | ||
| SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1; | ||
| COUNT(*) = 0 | ||
| 1 | ||
| COMMIT; | ||
| SET AUTOCOMMIT=ON; | ||
| connection node_1; | ||
| SELECT COUNT(*) = 35 FROM t1; | ||
| COUNT(*) = 35 | ||
| 1 | ||
| SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1; | ||
| COUNT(*) = 0 | ||
| 1 | ||
| DROP TABLE t1; | ||
| COMMIT; | ||
| SET AUTOCOMMIT=ON; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,96 @@ | ||
| connection node_1; | ||
| connection node_2; | ||
| Performing State Transfer on a server that has been shut down cleanly and restarted | ||
| connection node_1; | ||
| CREATE TABLE t1 (f1 CHAR(255)) ENGINE=InnoDB; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| INSERT INTO t1 VALUES ('node1_committed_before'); | ||
| COMMIT; | ||
| connection node_2; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| INSERT INTO t1 VALUES ('node2_committed_before'); | ||
| COMMIT; | ||
| Shutting down server ... | ||
| connection node_1; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| INSERT INTO t1 VALUES ('node1_committed_during'); | ||
| COMMIT; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| connect node_1a_galera_st_shutdown_slave, 127.0.0.1, root, , test, $NODE_MYPORT_1; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| connection node_2; | ||
| Starting server ... | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| INSERT INTO t1 VALUES ('node2_committed_after'); | ||
| COMMIT; | ||
| connection node_1; | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_committed_after'); | ||
| COMMIT; | ||
| SET AUTOCOMMIT=OFF; | ||
| START TRANSACTION; | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| INSERT INTO t1 VALUES ('node1_committed_after'); | ||
| COMMIT; | ||
| connection node_1a_galera_st_shutdown_slave; | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| INSERT INTO t1 VALUES ('node1_to_be_rollbacked_after'); | ||
| ROLLBACK; | ||
| SELECT COUNT(*) = 35 FROM t1; | ||
| COUNT(*) = 35 | ||
| 1 | ||
| SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1; | ||
| COUNT(*) = 0 | ||
| 1 | ||
| COMMIT; | ||
| SET AUTOCOMMIT=ON; | ||
| connection node_1; | ||
| SELECT COUNT(*) = 35 FROM t1; | ||
| COUNT(*) = 35 | ||
| 1 | ||
| SELECT COUNT(*) = 0 FROM (SELECT COUNT(*) AS c, f1 FROM t1 GROUP BY f1 HAVING c NOT IN (5, 10)) AS a1; | ||
| COUNT(*) = 0 | ||
| 1 | ||
| DROP TABLE t1; | ||
| COMMIT; | ||
| SET AUTOCOMMIT=ON; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| !include ../galera_2nodes.cnf | ||
|
|
||
| [mysqld] | ||
| wsrep_sst_method=rsync | ||
|
|
||
| [mysqld.1] | ||
| wsrep_provider_options='base_port=@mysqld.1.#galera_port;gcache.size=1;pc.ignore_sb=true' | ||
| log_bin=server1_binlog | ||
|
|
||
| [mysqld.2] | ||
| wsrep_provider_options='base_port=@mysqld.2.#galera_port;gcache.size=1;pc.ignore_sb=true' | ||
| log_bin=server2_binlog |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| --source include/galera_cluster.inc | ||
|
|
||
| --let $node_1=node_1 | ||
| --let $node_2=node_2 | ||
| --source include/auto_increment_offset_save.inc | ||
|
|
||
| --source suite/galera/include/galera_st_shutdown_slave.inc | ||
|
|
||
| --source include/auto_increment_offset_restore.inc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| !include ../galera_2nodes.cnf | ||
|
|
||
| [mysqld] | ||
| wsrep_sst_method=rsync | ||
|
|
||
| [mysqld.1] | ||
| wsrep_provider_options='base_port=@mysqld.1.#galera_port;gcache.size=1;pc.ignore_sb=true' | ||
| log_basename=server1 | ||
| log_bin | ||
|
|
||
| [mysqld.2] | ||
| wsrep_provider_options='base_port=@mysqld.2.#galera_port;gcache.size=1;pc.ignore_sb=true' | ||
| log_basename=server2 | ||
| log_bin | ||
|
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| --source include/galera_cluster.inc | ||
|
|
||
| --let $node_1=node_1 | ||
| --let $node_2=node_2 | ||
| --source include/auto_increment_offset_save.inc | ||
|
|
||
| --source suite/galera/include/galera_st_shutdown_slave.inc | ||
|
|
||
| --source include/auto_increment_offset_restore.inc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters