Commit 692a8796 authored by Matthias Leich's avatar Matthias Leich

Fix for Bug#39854 events_scheduling fails sporadically on pushbuild

Detail:
- Choose the solution that was already in place (before last fix)
  for 6.0
- minor cleanup in comments
parent 9e42a600
...@@ -62,18 +62,6 @@ CREATE EVENT event_4 ON SCHEDULE EVERY 1 SECOND ENDS NOW() + INTERVAL 1 SECOND ...@@ -62,18 +62,6 @@ CREATE EVENT event_4 ON SCHEDULE EVERY 1 SECOND ENDS NOW() + INTERVAL 1 SECOND
ON COMPLETION PRESERVE ON COMPLETION PRESERVE
DO DO
INSERT INTO table_4 VALUES (1); INSERT INTO table_4 VALUES (1);
SELECT IF(SUM(a) >= 4, 'OK', 'ERROR') FROM table_1;
IF(SUM(a) >= 4, 'OK', 'ERROR')
OK
SELECT IF(SUM(a) >= 4, 'OK', 'ERROR') FROM table_2;
IF(SUM(a) >= 4, 'OK', 'ERROR')
OK
SELECT IF(SUM(a) >= 1, 'OK', 'ERROR') FROM table_3;
IF(SUM(a) >= 1, 'OK', 'ERROR')
OK
SELECT IF(SUM(a) >= 1, 'OK', 'ERROR') FROM table_4;
IF(SUM(a) >= 1, 'OK', 'ERROR')
OK
SELECT IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR') SELECT IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR')
FROM INFORMATION_SCHEMA.EVENTS FROM INFORMATION_SCHEMA.EVENTS
WHERE EVENT_SCHEMA=DATABASE() AND EVENT_NAME='event_2'; WHERE EVENT_SCHEMA=DATABASE() AND EVENT_NAME='event_2';
......
...@@ -58,8 +58,6 @@ ON COMPLETION PRESERVE ...@@ -58,8 +58,6 @@ ON COMPLETION PRESERVE
DO DO
INSERT INTO table_4 VALUES (1); INSERT INTO table_4 VALUES (1);
# Wait for the events to fire and check the data afterwards
# Let event_1 insert at least 4 records into the table # Let event_1 insert at least 4 records into the table
let $wait_condition=select count(*) >= 4 from table_1; let $wait_condition=select count(*) >= 4 from table_1;
--source include/wait_condition.inc --source include/wait_condition.inc
...@@ -85,25 +83,13 @@ let $wait_condition=select count(*) = 0 from information_schema.events ...@@ -85,25 +83,13 @@ let $wait_condition=select count(*) = 0 from information_schema.events
where event_name='event_4' and status='enabled'; where event_name='event_4' and status='enabled';
--source include/wait_condition.inc --source include/wait_condition.inc
let $wait_condition=SELECT SUM(a) >= 4 FROM table_1; #
source include/wait_condition.inc; # On a busy system the scheduler may skip execution of events,
SELECT IF(SUM(a) >= 4, 'OK', 'ERROR') FROM table_1; # we can't reliably expect that the data in a table to be modified
# by an event will be exact. Thus we do not SELECT from the tables
# In case of a testing box under heavy load it cannot be guaranteed that # in this test. See also
# it is really often enough checked if event_2 has to be executed. # Bug#39854 events_scheduling fails sporadically on pushbuild
# -> Bug#39854 events_scheduling fails sporadically on pushbuild #
# Therefore we lowered here the original expectation of 5 to 4.
let $wait_condition=SELECT SUM(a) >= 4 FROM table_2;
source include/wait_condition.inc;
SELECT IF(SUM(a) >= 4, 'OK', 'ERROR') FROM table_2;
let $wait_condition=SELECT SUM(a) >= 1 FROM table_3;
source include/wait_condition.inc;
SELECT IF(SUM(a) >= 1, 'OK', 'ERROR') FROM table_3;
let $wait_condition=SELECT SUM(a) >= 1 FROM table_4;
source include/wait_condition.inc;
SELECT IF(SUM(a) >= 1, 'OK', 'ERROR') FROM table_4;
SELECT IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR') SELECT IF(TIME_TO_SEC(TIMEDIFF(ENDS,STARTS))=6, 'OK', 'ERROR')
FROM INFORMATION_SCHEMA.EVENTS FROM INFORMATION_SCHEMA.EVENTS
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment