1#ifndef _EVENT_SCHEDULER_H_
2#define _EVENT_SCHEDULER_H_
74 bool start(
int *err_no);
96 void lock_data(
const char *func, uint line);
102 const char *src_file, uint src_line);
Definition: event_db_repository.h:86
Definition: event_data_objects.h:155
Definition: event_data_objects.h:53
Queue of active events awaiting execution.
Definition: event_queue.h:101
Definition: event_scheduler.h:67
ulonglong started_events
Definition: event_scheduler.h:124
uint mutex_last_unlocked_at_line
Definition: event_scheduler.h:118
mysql_cond_t COND_state
Definition: event_scheduler.h:113
enum enum_state state
Definition: event_scheduler.h:109
bool waiting_on_cond
Definition: event_scheduler.h:122
void operator=(Event_scheduler &)=delete
const char * mutex_last_locked_in_func
Definition: event_scheduler.h:119
const char * mutex_last_unlocked_in_func
Definition: event_scheduler.h:120
uint mutex_last_locked_at_line
Definition: event_scheduler.h:117
THD * scheduler_thd
Definition: event_scheduler.h:111
Event_scheduler(const Event_scheduler &)=delete
Event_queue * queue
Definition: event_scheduler.h:115
mysql_mutex_t LOCK_scheduler_state
Definition: event_scheduler.h:104
bool mutex_scheduler_data_locked
Definition: event_scheduler.h:121
enum_state
Definition: event_scheduler.h:106
@ STOPPING
Definition: event_scheduler.h:106
@ INITIALIZED
Definition: event_scheduler.h:106
@ RUNNING
Definition: event_scheduler.h:106
Definition: event_scheduler.h:59
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:33
void dump_internal_status()
Definition: event_scheduler.cc:927
bool is_running()
Definition: event_scheduler.cc:727
void pre_init_event_thread(THD *thd)
Definition: event_scheduler.cc:212
bool stop()
Stops the scheduler (again).
Definition: event_scheduler.cc:749
void cond_wait(THD *thd, struct timespec *abstime, const PSI_stage_info *stage, const char *src_func, const char *src_file, uint src_line)
Definition: event_scheduler.cc:887
void run(THD *thd, Event_queue_element_for_exec *event)
Function that executes an event in a child thread.
Definition: event_scheduler.cc:347
void print_warnings(THD *thd, Event_job_data *et)
Definition: event_scheduler.cc:104
bool execute_top(Event_queue_element_for_exec *event_name)
Definition: event_scheduler.cc:660
void lock_data(const char *func, uint line)
Definition: event_scheduler.cc:847
bool run(THD *thd)
Definition: event_scheduler.cc:583
void deinit_event_thread(THD *thd)
Definition: event_scheduler.cc:186
void unlock_data(const char *func, uint line)
Definition: event_scheduler.cc:866
Event_scheduler(Event_queue *event_queue_arg)
Definition: event_scheduler.cc:451
int workers_count()
Definition: event_scheduler.cc:827
bool post_init_event_thread(THD *thd)
Definition: event_scheduler.cc:166
~Event_scheduler()
Definition: event_scheduler.cc:467
bool start(int *err_no)
Starts the scheduler (again).
Definition: event_scheduler.cc:487
Some integer typedefs for easier portability.
unsigned long long int ulonglong
Definition: my_inttypes.h:55
Instrumentation helpers for conditions.
ABI for instrumented mutexes.
Performance schema instrumentation interface.
required string event
Definition: replication_group_member_actions.proto:31
Stage instrument information.
Definition: psi_stage_bits.h:73
An instrumented cond structure.
Definition: mysql_cond_bits.h:49
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:49