|
| static bool | start (int *err_no) |
| |
| static bool | stop () |
| |
| static bool | init (bool opt_noacl) |
| | Initializes the scheduler's structures. More...
|
| |
| static void | deinit () |
| |
| static void | init_mutexes () |
| |
| static bool | create_event (THD *thd, Event_parse_data *parse_data, bool if_exists) |
| | Create a new event. More...
|
| |
| static bool | update_event (THD *thd, Event_parse_data *parse_data, const LEX_CSTRING *new_dbname, const LEX_CSTRING *new_name) |
| | Alter an event. More...
|
| |
| static bool | drop_event (THD *thd, LEX_CSTRING dbname, LEX_CSTRING name, bool if_exists) |
| | Drops an event. More...
|
| |
| static bool | lock_schema_events (THD *thd, const dd::Schema &schema) |
| | Take exclusive metadata lock on all events in a schema. More...
|
| |
| static bool | drop_schema_events (THD *thd, const dd::Schema &schema) |
| | Drops all events from a schema. More...
|
| |
| static bool | show_create_event (THD *thd, LEX_CSTRING dbname, LEX_CSTRING name) |
| | Implement SHOW CREATE EVENT statement. More...
|
| |
| static int | reconstruct_interval_expression (String *buf, interval_type interval, longlong expression) |
| |
| static void | dump_internal_status () |
| |
A facade to the functionality of the Event Scheduler.
Every public operation against the scheduler has to be executed via the interface provided by a static method of this class. No instance of this class is ever created and it has no non-static data members.
The life cycle of the Events module is the following:
At server start up: init_mutexes() -> init() When the server is running: create_event(), drop_event(), start_or_stop_event_scheduler(), etc At shutdown: deinit(), destroy_mutexes().
The peculiar initialization and shutdown cycle is an adaptation to the outside server startup/shutdown framework and mimics the rest of MySQL subsystems (ACL, time zone tables, etc).