mariadb/mysql-test/t/events_scheduling.test
unknown 245b9ad4b3 Make sure tests drops objects created and restore variables to default
mysql-test/extra/rpl_tests/rpl_row_func003.test:
  Fix spelling error
mysql-test/extra/rpl_tests/rpl_row_tabledefs.test:
  Restore sql_mode after test
mysql-test/r/events_logs_tests.result:
  Turn even_scheduleroff before test ends
mysql-test/r/events_scheduling.result:
  Turn even_scheduleroff before test ends
mysql-test/r/insert.result:
  Drop tables t1 before test ends
mysql-test/r/rpl_read_only.result:
  Set read_only flag back to default
mysql-test/r/rpl_row_NOW.result:
  Drop database mysqltest1 before test ends
mysql-test/r/rpl_row_USER.result:
  Drop users created by test
mysql-test/r/rpl_row_basic_11bugs.result:
  Drop table and set query_cache_size back to default
mysql-test/r/rpl_row_func002.result:
  Drop table created by test
mysql-test/r/rpl_row_sp008.result:
  Drop table created by test
mysql-test/r/rpl_row_sp012.result:
  Drop user created by test
mysql-test/r/rpl_row_tabledefs_2myisam.result:
  Restore sql_mode
mysql-test/r/rpl_row_tabledefs_3innodb.result:
  Restore sql_mode
mysql-test/r/rpl_row_tabledefs_7ndb.result:
  Restore sql_mode
mysql-test/r/rpl_row_view01.result:
  Drop database created by test
mysql-test/r/rpl_slave_status.result:
  Remove created users
mysql-test/r/rpl_switch_stm_row_mixed.result:
  Reset binlog_format to default
mysql-test/r/sp.result:
  Drop procedure created by test
mysql-test/r/varbinary.result:
  Drop table created by test
mysql-test/r/variables.result:
  Reset changed variables to their defaults
mysql-test/t/events_logs_tests.test:
  Turn off event_scheduler before test ends
mysql-test/t/events_scheduling.test:
  Turn off event_scheduler
mysql-test/t/insert.test:
  Drop table created by test
mysql-test/t/rpl_read_only.test:
  Reset read_only flag
mysql-test/t/rpl_row_NOW.test:
  Drop db created by test
mysql-test/t/rpl_row_USER.test:
  Drop users created
mysql-test/t/rpl_row_basic_11bugs.test:
  Drop tables created by test
mysql-test/t/rpl_row_func002.test:
  Drop table created by test
mysql-test/t/rpl_row_sp008.test:
  Drop table created by test
mysql-test/t/rpl_row_sp012.test:
  Drop user created by test
mysql-test/t/rpl_row_view01.test:
  Drop db created by test
mysql-test/t/rpl_slave_status.test:
  Remove users created by test
mysql-test/t/rpl_switch_stm_row_mixed.test:
  Reset binlog_format
mysql-test/t/sp.test:
  Drop procedure created by test
mysql-test/t/varbinary.test:
  Drop tables created by test
mysql-test/t/variables.test:
  Restore variables to their default before test ends
2007-03-01 14:16:38 +01:00

66 lines
2.6 KiB
Text

# Can't test with embedded server that doesn't support grants
-- source include/not_embedded.inc
-- source include/not_valgrind.inc
CREATE DATABASE IF NOT EXISTS events_test;
USE events_test;
SET GLOBAL event_scheduler=OFF;
SHOW VARIABLES LIKE 'event_scheduler';
SET GLOBAL event_scheduler=1;
SHOW VARIABLES LIKE 'event_scheduler';
SET GLOBAL event_scheduler=0;
SHOW VARIABLES LIKE 'event_scheduler';
SET GLOBAL event_scheduler=ON;
SHOW VARIABLES LIKE 'event_scheduler';
--error ER_WRONG_VALUE_FOR_VAR
SET GLOBAL event_scheduler=DISABLED;
SHOW VARIABLES LIKE 'event_scheduler';
--error ER_WRONG_VALUE_FOR_VAR
SET GLOBAL event_scheduler=-1;
SHOW VARIABLES LIKE 'event_scheduler';
--error ER_WRONG_VALUE_FOR_VAR
SET GLOBAL event_scheduler=2;
SHOW VARIABLES LIKE 'event_scheduler';
--error ER_WRONG_VALUE_FOR_VAR
SET GLOBAL event_scheduler=5;
SHOW VARIABLES LIKE 'event_scheduler';
CREATE TABLE table_1(a int);
CREATE TABLE table_2(a int);
CREATE TABLE table_3(a int);
CREATE TABLE table_4(a int);
CREATE TABLE T19170(s1 TIMESTAMP);
SET GLOBAL event_scheduler=ON;
# We need to have 2 to make it safe with valgrind. This is probably because
# of when we calculate the timestamp value
CREATE EVENT two_sec ON SCHEDULE EVERY 2 SECOND DO INSERT INTO table_1 VALUES(1);
CREATE EVENT start_n_end
ON SCHEDULE EVERY 1 SECOND
ENDS NOW() + INTERVAL 6 SECOND
ON COMPLETION PRESERVE
DO INSERT INTO table_2 VALUES(1);
--sleep 5
CREATE EVENT only_one_time ON SCHEDULE EVERY 2 SECOND ENDS NOW() + INTERVAL 1 SECOND DO INSERT INTO table_3 VALUES(1);
CREATE EVENT two_time ON SCHEDULE EVERY 1 SECOND ENDS NOW() + INTERVAL 1 SECOND ON COMPLETION PRESERVE DO INSERT INTO table_4 VALUES(1);
--sleep 5
SELECT IF(SUM(a) >= 4, 'OK', 'ERROR') FROM table_1;
SELECT IF(SUM(a) >= 5, 'OK', 'ERROR') FROM table_2;
SELECT IF(SUM(a) > 0, 'OK', 'ERROR') FROM table_3;
SELECT IF(SUM(a) > 0, 'OK', 'ERROR') FROM table_4;
DROP EVENT two_sec;
SELECT IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR') FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA=DATABASE() AND EVENT_NAME='start_n_end' AND ENDS IS NOT NULL;
SELECT IF(LAST_EXECUTED-ENDS < 3, 'OK', 'ERROR') FROM INFORMATION_SCHEMA.EVENTS WHERE EVENT_SCHEMA=DATABASE() AND EVENT_NAME='start_n_end' AND ENDS IS NOT NULL;
DROP EVENT start_n_end;
--echo "Already dropped because ended. Therefore an error."
--error ER_EVENT_DOES_NOT_EXIST
DROP EVENT only_one_time;
--echo "Should be preserved"
SELECT EVENT_NAME, STATUS FROM INFORMATION_SCHEMA.EVENTS ORDER BY EVENT_NAME;
DROP EVENT two_time;
DROP TABLE table_1;
DROP TABLE table_2;
DROP TABLE table_3;
DROP TABLE table_4;
DROP DATABASE events_test;
SET GLOBAL event_scheduler=OFF;