1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

- fix for bug #16414 (Events: Crash or hang if event drops itself)

WL#1034 (Internal CRON)
(with post-review fix)


mysql-test/r/events.result:
  update the result
mysql-test/t/events.test:
  use --sleep instead of select sleep()
  enable some scheduler related tests. They were disabled because of a hang that
  happened. The hang is fixed with this bugfix.
sql/event.cc:
  - evex_remove_from_cache reports back whether the in_memory
    object was deleted or was scheduled. In case scheduling then
    don't delete it from outside but let it do it itself
  - move out db interaction code out of evex_drop_event to db_drop_event
    so it can be called from outter space :)
sql/event_priv.h:
  - export the new function db_drop_event()
sql/event_timed.cc:
  - use db_drop_event() and don't implement the dropping ourselves
sql/sql_parse.cc:
  - some debug info about the status code returned.
This commit is contained in:
unknown
2006-02-07 19:28:33 +01:00
parent 5f67b29f61
commit 99eb6eb661
6 changed files with 197 additions and 76 deletions

View File

@@ -3723,6 +3723,8 @@ end_with_restore_list:
res= evex_drop_event(thd, lex->et, lex->drop_if_exists, &rows_affected);
default:;
}
DBUG_PRINT("info", ("CREATE/ALTER/DROP returned error code=%d af_rows=%d",
res, rows_affected));
if (!res)
send_ok(thd, rows_affected);