Description:
Test case: rpl_ddl.test
let $my_stmt= CREATE PROCEDURE p1() READS SQL DATA SELECT "this is p1";
let $my_master_commit= true;
let $my_slave_commit= true;
--source include/rpl_stmt_seq.inc
--vertical_results
--replace_column 5 # 6 #
SHOW PROCEDURE STATUS LIKE 'p1';
--disable_query_log
SELECT '-------- switch to slave -------' as "";
--enable_query_log
connection slave;
--replace_column 5 # 6 #
SHOW PROCEDURE STATUS LIKE 'p1';
connection master;
--horizontal_results
let $my_stmt= ALTER PROCEDURE p1 COMMENT "I have been altered";
let $my_master_commit= true;
let $my_slave_commit= true;
--source include/rpl_stmt_seq.inc
--vertical_results
--replace_column 5 # 6 #
SHOW PROCEDURE STATUS LIKE 'p1';
--disable_query_log
SELECT '-------- switch to slave -------' as "";
--enable_query_log
connection slave;
--replace_column 5 # 6 #
SHOW PROCEDURE STATUS LIKE 'p1';
connection master;
--horizontal_results
let $my_stmt= DROP PROCEDURE p1;
let $my_master_commit= true;
let $my_slave_commit= true;
--source include/rpl_stmt_seq.inc
--vertical_results
SHOW PROCEDURE STATUS LIKE 'p1';
--disable_query_log
SELECT '-------- switch to slave -------' as "";
--enable_query_log
connection slave;
SHOW PROCEDURE STATUS LIKE 'p1';
connection master;
--horizontal_results
*** Results SBR ****
-------- switch to master -------
SHOW PROCEDURE STATUS LIKE 'p1';
Db mysqltest1
Name p1
Type PROCEDURE
Definer root@localhost
Modified #
Created #
Security_type DEFINER
Comment
-------- switch to slave -------
SHOW PROCEDURE STATUS LIKE 'p1';
Db mysqltest1
Name p1
Type PROCEDURE
Definer @
Modified #
Created #
Security_type DEFINER
Comment
######## ALTER PROCEDURE p1 COMMENT "I have been altered" ########
-------- switch to master -------
SHOW PROCEDURE STATUS LIKE 'p1';
Db mysqltest1
Name p1
Type PROCEDURE
Definer root@localhost
Modified #
Created #
Security_type DEFINER
Comment I have been altered
-------- switch to slave -------
SHOW PROCEDURE STATUS LIKE 'p1';
Db mysqltest1
Name p1
Type PROCEDURE
Definer @
Modified #
Created #
Security_type DEFINER
Comment I have been altered
*** Results SBR ****
-------- switch to master -------
SHOW PROCEDURE STATUS LIKE 'p1';
Db mysqltest1
Name p1
Type PROCEDURE
Definer root@localhost
Modified #
Created #
Security_type DEFINER
Comment
-------- switch to slave -------
SHOW PROCEDURE STATUS LIKE 'p1';
Db mysqltest1
Name p1
Type PROCEDURE
Definer root@localhost
Modified #
Created #
Security_type DEFINER
Comment
######## ALTER PROCEDURE p1 COMMENT "I have been altered" ########
-------- switch to master -------
SHOW PROCEDURE STATUS LIKE 'p1';
Db mysqltest1
Name p1
Type PROCEDURE
Definer root@localhost
Modified #
Created #
Security_type DEFINER
Comment I have been altered
-------- switch to slave -------
SHOW PROCEDURE STATUS LIKE 'p1';
Db mysqltest1
Name p1
Type PROCEDURE
Definer root@localhost
Modified #
Created #
Security_type DEFINER
Comment I have been altered
Test will be added to disable file under this bug report number.
How to repeat:
./mysql-test-run --force --skip-ndbcluster --mysqld=--binlog-format=statement --do-test=rpl_ddl
Suggested fix:
Definer root@localhost
Description: Test case: rpl_ddl.test let $my_stmt= CREATE PROCEDURE p1() READS SQL DATA SELECT "this is p1"; let $my_master_commit= true; let $my_slave_commit= true; --source include/rpl_stmt_seq.inc --vertical_results --replace_column 5 # 6 # SHOW PROCEDURE STATUS LIKE 'p1'; --disable_query_log SELECT '-------- switch to slave -------' as ""; --enable_query_log connection slave; --replace_column 5 # 6 # SHOW PROCEDURE STATUS LIKE 'p1'; connection master; --horizontal_results let $my_stmt= ALTER PROCEDURE p1 COMMENT "I have been altered"; let $my_master_commit= true; let $my_slave_commit= true; --source include/rpl_stmt_seq.inc --vertical_results --replace_column 5 # 6 # SHOW PROCEDURE STATUS LIKE 'p1'; --disable_query_log SELECT '-------- switch to slave -------' as ""; --enable_query_log connection slave; --replace_column 5 # 6 # SHOW PROCEDURE STATUS LIKE 'p1'; connection master; --horizontal_results let $my_stmt= DROP PROCEDURE p1; let $my_master_commit= true; let $my_slave_commit= true; --source include/rpl_stmt_seq.inc --vertical_results SHOW PROCEDURE STATUS LIKE 'p1'; --disable_query_log SELECT '-------- switch to slave -------' as ""; --enable_query_log connection slave; SHOW PROCEDURE STATUS LIKE 'p1'; connection master; --horizontal_results *** Results SBR **** -------- switch to master ------- SHOW PROCEDURE STATUS LIKE 'p1'; Db mysqltest1 Name p1 Type PROCEDURE Definer root@localhost Modified # Created # Security_type DEFINER Comment -------- switch to slave ------- SHOW PROCEDURE STATUS LIKE 'p1'; Db mysqltest1 Name p1 Type PROCEDURE Definer @ Modified # Created # Security_type DEFINER Comment ######## ALTER PROCEDURE p1 COMMENT "I have been altered" ######## -------- switch to master ------- SHOW PROCEDURE STATUS LIKE 'p1'; Db mysqltest1 Name p1 Type PROCEDURE Definer root@localhost Modified # Created # Security_type DEFINER Comment I have been altered -------- switch to slave ------- SHOW PROCEDURE STATUS LIKE 'p1'; Db mysqltest1 Name p1 Type PROCEDURE Definer @ Modified # Created # Security_type DEFINER Comment I have been altered *** Results SBR **** -------- switch to master ------- SHOW PROCEDURE STATUS LIKE 'p1'; Db mysqltest1 Name p1 Type PROCEDURE Definer root@localhost Modified # Created # Security_type DEFINER Comment -------- switch to slave ------- SHOW PROCEDURE STATUS LIKE 'p1'; Db mysqltest1 Name p1 Type PROCEDURE Definer root@localhost Modified # Created # Security_type DEFINER Comment ######## ALTER PROCEDURE p1 COMMENT "I have been altered" ######## -------- switch to master ------- SHOW PROCEDURE STATUS LIKE 'p1'; Db mysqltest1 Name p1 Type PROCEDURE Definer root@localhost Modified # Created # Security_type DEFINER Comment I have been altered -------- switch to slave ------- SHOW PROCEDURE STATUS LIKE 'p1'; Db mysqltest1 Name p1 Type PROCEDURE Definer root@localhost Modified # Created # Security_type DEFINER Comment I have been altered Test will be added to disable file under this bug report number. How to repeat: ./mysql-test-run --force --skip-ndbcluster --mysqld=--binlog-format=statement --do-test=rpl_ddl Suggested fix: Definer root@localhost