~maria-captains/maria/5.5-davi

« back to all changes in this revision

Viewing changes to mysql-test/suite/sys_vars/r/replicate_do_db_basic.result

  • Committer: Davi Arnaut
  • Date: 2012-03-19 22:00:23 UTC
  • Revision ID: davi@twitter.com-20120319220023-77a84i1t1n18pzt7
Make Replication filter settings dynamic.

Make the slave options --replicate-* dynamic variables so that these
options can be changed dynamically while the server is running,
which enables users to modify replication filtering rules without
having to stop and restart the server.

This is accomplished by just requiring that the slave threads are
stopped when these options are set dynamically. Since filtering
rules are only used by the SQL slave thread, setting them while the
thread is not running avoids the need for locking.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#
 
2
# Basic testing of replicate_do_db.
 
3
#
 
4
SET @save_replicate_do_db = @@GLOBAL.replicate_do_db;
 
5
SELECT @save_replicate_do_db;
 
6
@save_replicate_do_db
 
7
 
 
8
# Scope.
 
9
SET @@SESSION.replicate_do_db = "";
 
10
ERROR HY000: Variable 'replicate_do_db' is a GLOBAL variable and should be set with SET GLOBAL
 
11
SELECT @@SESSION.replicate_do_db;
 
12
ERROR HY000: Variable 'replicate_do_db' is a GLOBAL variable
 
13
# Incorrect type.
 
14
SET @@GLOBAL.replicate_do_db=1;
 
15
ERROR 42000: Incorrect argument type to variable 'replicate_do_db'
 
16
SET @@GLOBAL.replicate_do_db=1.1;
 
17
ERROR 42000: Incorrect argument type to variable 'replicate_do_db'
 
18
SET @@GLOBAL.replicate_do_db=1e1;
 
19
ERROR 42000: Incorrect argument type to variable 'replicate_do_db'
 
20
# Argument syntax.
 
21
SET @@GLOBAL.replicate_do_db="db1,,,,,db3";
 
22
SELECT @@GLOBAL.replicate_do_db;
 
23
@@GLOBAL.replicate_do_db
 
24
db1,db3
 
25
SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME='replicate_do_db';
 
26
VARIABLE_NAME   VARIABLE_VALUE
 
27
REPLICATE_DO_DB db1,db3
 
28
SET @@GLOBAL.replicate_do_db="db1,,,db2,,,db3";
 
29
SELECT @@GLOBAL.replicate_do_db;
 
30
@@GLOBAL.replicate_do_db
 
31
db1,db2,db3
 
32
SET @@GLOBAL.replicate_do_db="";
 
33
SELECT @@GLOBAL.replicate_do_db;
 
34
@@GLOBAL.replicate_do_db
 
35
 
 
36
# Cleanup.
 
37
SET @@GLOBAL.replicate_do_db = @save_replicate_do_db;