Below is the list of changes that have just been committed into a local
5.1 repository of alik. When alik does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2007-10-31 12:04:19+03:00, anozdrin@station. +1 -0
Fix for a BUG#31649: events.test fails: NULL "state" field of
SHOW PROCESSLIST.
The problem was a race condition: if the Event Scheduler was not
quick enough, the following scenario happens:
- The Event Scheduler picks up the created event;
- The event is executed;
- event_scheduler_thread->proc_info is set to NULL;
- The client issues SELECT FROM I_S.
The fix is to wait for the Event Scheduler to reach 'Waiting
for next activation' state.
mysql-test/t/events.test@stripped, 2007-10-31 12:04:17+03:00, anozdrin@station. +2 -1
Wait for the Event Scheduler to start waiting for the activation.
diff -Nrup a/mysql-test/t/events.test b/mysql-test/t/events.test
--- a/mysql-test/t/events.test 2007-09-06 15:57:32 +04:00
+++ b/mysql-test/t/events.test 2007-10-31 12:04:17 +03:00
@@ -454,7 +454,8 @@ create event закачка on schedule
--echo "Should have only 2 processes: the scheduler and the locked event"
let $wait_condition= select count(*) = 2 from information_schema.processlist
where ( (state like 'User lock%' AND info like 'select get_lock%')
- OR (command='Daemon' AND user='event_scheduler'));
+ OR (command='Daemon' AND user='event_scheduler' AND
+ state = 'Waiting for next activation'));
--source include/wait_condition.inc
select /*2*/ user, host, db, command, state, info
| Thread |
|---|
| • bk commit into 5.1 tree (anozdrin:1.2602) BUG#31649 | Alexander Nozdrin | 31 Oct |