MySQL Lists are EOL. Please join:

List:Commits« Previous MessageNext Message »
From:Serge Kozlov Date:January 21 2009 3:50pm
Subject:bzr commit into mysql-6.0-bugteam branch (Serge.Kozlov:2972) Bug#30128
View as plain text  
#At file:///home/ksm/sun/repo/bug30128/mysql-6.0-bugteam/ based on revid:svoj@stripped

 2972 Serge Kozlov	2009-01-21 [merge]
      Bug#30128, merge with 5.1
modified:
  mysql-test/include/rpl_events.inc
  mysql-test/suite/rpl/r/rpl_events.result
  mysql-test/suite/rpl/t/rpl_events.test

=== modified file 'mysql-test/include/rpl_events.inc'
--- a/mysql-test/include/rpl_events.inc	2008-04-30 18:41:50 +0000
+++ b/mysql-test/include/rpl_events.inc	2009-01-21 15:48:12 +0000
@@ -62,7 +62,9 @@ SELECT db, name, status, originator FROM
 DROP EVENT IF EXISTS test.slave_once;
 --enable_warnings
 
-CREATE EVENT test.slave_once ON SCHEDULE EVERY 5 MINUTE DO 
+# Create an event on slave and check its state. An event shouldn't be executed 
+# so set start time in 1 hour.
+CREATE EVENT test.slave_once ON SCHEDULE EVERY 5 MINUTE STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
   INSERT IGNORE INTO t1(id, c) VALUES (3, 'from slave_once');
 
 --echo "Checking event status on the slave for originator value = slave's server_id"
@@ -81,8 +83,11 @@ connection master;
 DROP EVENT IF EXISTS test.justonce;
 --enable_warnings
 
+# Create an event on master and check its state on slave. An event shouldn't be executed 
+# so set start time in 1 hour. Check that changes of event statement replicated to slave
+
 --echo "Creating event test.er on the master"
-CREATE EVENT test.er ON SCHEDULE EVERY 3 SECOND DO 
+CREATE EVENT test.er ON SCHEDULE EVERY 3 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
   INSERT IGNORE INTO t1(id, c) VALUES (4, 'from er');
 
 --echo "Checking event status on the master"
@@ -95,7 +100,7 @@ SELECT db, name, status, originator, bod
 
 connection master;
 --echo "Altering event test.er on the master"
-ALTER EVENT test.er ON SCHEDULE EVERY 5 SECOND DO 
+ALTER EVENT test.er ON SCHEDULE EVERY 5 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
   INSERT IGNORE INTO t1(id, c) VALUES (5, 'from alter er');
 
 --echo "Checking event status on the master"
@@ -123,8 +128,11 @@ SELECT db, name, status, originator FROM
 # test the DISABLE ON SLAVE for setting event SLAVESIDE_DISABLED as status
 # on CREATE EVENT
 
+# Create an event on slave and check its status. An event shouldn't be executed 
+# so set start time in 1 hour.
+
 --echo "Creating event test.slave_terminate on the slave"
-CREATE EVENT test.slave_terminate ON SCHEDULE EVERY 3 SECOND DO 
+CREATE EVENT test.slave_terminate ON SCHEDULE EVERY 3 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
   INSERT IGNORE INTO t1(id, c) VALUES (6, 'from slave_terminate');
 
 --echo "Checking event status on the slave"

=== modified file 'mysql-test/suite/rpl/r/rpl_events.result'
--- a/mysql-test/suite/rpl/r/rpl_events.result	2008-10-20 09:16:47 +0000
+++ b/mysql-test/suite/rpl/r/rpl_events.result	2009-01-21 15:50:26 +0000
@@ -1,10 +1,11 @@
-set global event_scheduler=1;
 stop slave;
 drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 reset master;
 reset slave;
 drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
 start slave;
+SET @old_event_scheduler = @@global.event_scheduler;
+set global event_scheduler=1;
 set binlog_format=row;
 DROP EVENT IF EXISTS test.justonce;
 drop table if exists t1,t2;
@@ -34,7 +35,7 @@ db	name	status	originator
 test	justonce	SLAVESIDE_DISABLED	1
 "Dropping event test.slave_once on the slave"
 DROP EVENT IF EXISTS test.slave_once;
-CREATE EVENT test.slave_once ON SCHEDULE EVERY 5 MINUTE DO 
+CREATE EVENT test.slave_once ON SCHEDULE EVERY 5 MINUTE STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
 INSERT IGNORE INTO t1(id, c) VALUES (3, 'from slave_once');
 "Checking event status on the slave for originator value = slave's server_id"
 SELECT db, name, status, originator FROM mysql.event WHERE db = 'test' AND name = 'slave_once';
@@ -45,7 +46,7 @@ DROP EVENT IF EXISTS test.slave_once;
 "Dropping event test.justonce on the master"
 DROP EVENT IF EXISTS test.justonce;
 "Creating event test.er on the master"
-CREATE EVENT test.er ON SCHEDULE EVERY 3 SECOND DO 
+CREATE EVENT test.er ON SCHEDULE EVERY 3 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
 INSERT IGNORE INTO t1(id, c) VALUES (4, 'from er');
 "Checking event status on the master"
 SELECT db, name, status, originator, body FROM mysql.event WHERE db = 'test' AND name = 'er';
@@ -56,7 +57,7 @@ SELECT db, name, status, originator, bod
 db	name	status	originator	body
 test	er	SLAVESIDE_DISABLED	1	INSERT IGNORE INTO t1(id, c) VALUES (4, 'from er')
 "Altering event test.er on the master"
-ALTER EVENT test.er ON SCHEDULE EVERY 5 SECOND DO 
+ALTER EVENT test.er ON SCHEDULE EVERY 5 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
 INSERT IGNORE INTO t1(id, c) VALUES (5, 'from alter er');
 "Checking event status on the master"
 SELECT db, name, status, originator, body FROM mysql.event WHERE db = 'test' AND name = 'er';
@@ -75,7 +76,7 @@ db	name	status	originator
 SELECT db, name, status, originator FROM mysql.event WHERE db = 'test';
 db	name	status	originator
 "Creating event test.slave_terminate on the slave"
-CREATE EVENT test.slave_terminate ON SCHEDULE EVERY 3 SECOND DO 
+CREATE EVENT test.slave_terminate ON SCHEDULE EVERY 3 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
 INSERT IGNORE INTO t1(id, c) VALUES (6, 'from slave_terminate');
 "Checking event status on the slave"
 SELECT db, name, status, originator FROM mysql.event WHERE db = 'test' AND name = 'slave_terminate';
@@ -123,7 +124,7 @@ db	name	status	originator
 test	justonce	SLAVESIDE_DISABLED	1
 "Dropping event test.slave_once on the slave"
 DROP EVENT IF EXISTS test.slave_once;
-CREATE EVENT test.slave_once ON SCHEDULE EVERY 5 MINUTE DO 
+CREATE EVENT test.slave_once ON SCHEDULE EVERY 5 MINUTE STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
 INSERT IGNORE INTO t1(id, c) VALUES (3, 'from slave_once');
 "Checking event status on the slave for originator value = slave's server_id"
 SELECT db, name, status, originator FROM mysql.event WHERE db = 'test' AND name = 'slave_once';
@@ -134,7 +135,7 @@ DROP EVENT IF EXISTS test.slave_once;
 "Dropping event test.justonce on the master"
 DROP EVENT IF EXISTS test.justonce;
 "Creating event test.er on the master"
-CREATE EVENT test.er ON SCHEDULE EVERY 3 SECOND DO 
+CREATE EVENT test.er ON SCHEDULE EVERY 3 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
 INSERT IGNORE INTO t1(id, c) VALUES (4, 'from er');
 "Checking event status on the master"
 SELECT db, name, status, originator, body FROM mysql.event WHERE db = 'test' AND name = 'er';
@@ -145,7 +146,7 @@ SELECT db, name, status, originator, bod
 db	name	status	originator	body
 test	er	SLAVESIDE_DISABLED	1	INSERT IGNORE INTO t1(id, c) VALUES (4, 'from er')
 "Altering event test.er on the master"
-ALTER EVENT test.er ON SCHEDULE EVERY 5 SECOND DO 
+ALTER EVENT test.er ON SCHEDULE EVERY 5 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
 INSERT IGNORE INTO t1(id, c) VALUES (5, 'from alter er');
 "Checking event status on the master"
 SELECT db, name, status, originator, body FROM mysql.event WHERE db = 'test' AND name = 'er';
@@ -164,7 +165,7 @@ db	name	status	originator
 SELECT db, name, status, originator FROM mysql.event WHERE db = 'test';
 db	name	status	originator
 "Creating event test.slave_terminate on the slave"
-CREATE EVENT test.slave_terminate ON SCHEDULE EVERY 3 SECOND DO 
+CREATE EVENT test.slave_terminate ON SCHEDULE EVERY 3 SECOND STARTS CURRENT_TIMESTAMP + INTERVAL 1 HOUR DO 
 INSERT IGNORE INTO t1(id, c) VALUES (6, 'from slave_terminate');
 "Checking event status on the slave"
 SELECT db, name, status, originator FROM mysql.event WHERE db = 'test' AND name = 'slave_terminate';
@@ -190,4 +191,5 @@ select * from t28953;
 END;|
 ALTER EVENT event1 RENAME TO event2;
 DROP EVENT event2;
+SET @@global.event_scheduler= @old_event_scheduler;
 DROP TABLE t28953;

=== modified file 'mysql-test/suite/rpl/t/rpl_events.test'
--- a/mysql-test/suite/rpl/t/rpl_events.test	2008-02-14 09:53:12 +0000
+++ b/mysql-test/suite/rpl/t/rpl_events.test	2009-01-21 15:48:12 +0000
@@ -5,11 +5,12 @@
 # in both row based and statement based format                   #
 ##################################################################
 
-set global event_scheduler=1;
-
 --source include/not_embedded.inc
 --source include/master-slave.inc
 
+SET @old_event_scheduler = @@global.event_scheduler;
+set global event_scheduler=1;
+
 let $engine_type= MyISAM;
 
 set binlog_format=row;
@@ -51,5 +52,6 @@ sync_slave_with_master;
 # that there is no bad timing cauing it to try to access the table.
 
 connection master;
+SET @@global.event_scheduler= @old_event_scheduler;
 DROP TABLE t28953;
 sync_slave_with_master;

Thread
bzr commit into mysql-6.0-bugteam branch (Serge.Kozlov:2972) Bug#30128Serge Kozlov21 Jan