1#ifndef _EVENT_SCHEDULER_H_
2#define _EVENT_SCHEDULER_H_
75 bool start(
int *err_no);
97 void lock_data(
const char *func, uint line);
103 const char *src_file, uint src_line);
Definition: event_db_repository.h:87
Definition: event_data_objects.h:157
Definition: event_data_objects.h:55
Queue of active events awaiting execution.
Definition: event_queue.h:102
Definition: event_scheduler.h:68
ulonglong started_events
Definition: event_scheduler.h:125
uint mutex_last_unlocked_at_line
Definition: event_scheduler.h:119
mysql_cond_t COND_state
Definition: event_scheduler.h:114
enum enum_state state
Definition: event_scheduler.h:110
bool waiting_on_cond
Definition: event_scheduler.h:123
void operator=(Event_scheduler &)=delete
const char * mutex_last_locked_in_func
Definition: event_scheduler.h:120
const char * mutex_last_unlocked_in_func
Definition: event_scheduler.h:121
uint mutex_last_locked_at_line
Definition: event_scheduler.h:118
THD * scheduler_thd
Definition: event_scheduler.h:112
Event_scheduler(const Event_scheduler &)=delete
Event_queue * queue
Definition: event_scheduler.h:116
mysql_mutex_t LOCK_scheduler_state
Definition: event_scheduler.h:105
bool mutex_scheduler_data_locked
Definition: event_scheduler.h:122
enum_state
Definition: event_scheduler.h:107
@ STOPPING
Definition: event_scheduler.h:107
@ INITIALIZED
Definition: event_scheduler.h:107
@ RUNNING
Definition: event_scheduler.h:107
Definition: event_scheduler.h:60
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:36
void dump_internal_status()
Definition: event_scheduler.cc:928
bool is_running()
Definition: event_scheduler.cc:728
void pre_init_event_thread(THD *thd)
Definition: event_scheduler.cc:213
bool stop()
Stops the scheduler (again).
Definition: event_scheduler.cc:750
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:888
void run(THD *thd, Event_queue_element_for_exec *event)
Function that executes an event in a child thread.
Definition: event_scheduler.cc:348
void print_warnings(THD *thd, Event_job_data *et)
Definition: event_scheduler.cc:105
bool execute_top(Event_queue_element_for_exec *event_name)
Definition: event_scheduler.cc:661
void lock_data(const char *func, uint line)
Definition: event_scheduler.cc:848
bool run(THD *thd)
Definition: event_scheduler.cc:584
void deinit_event_thread(THD *thd)
Definition: event_scheduler.cc:187
void unlock_data(const char *func, uint line)
Definition: event_scheduler.cc:867
Event_scheduler(Event_queue *event_queue_arg)
Definition: event_scheduler.cc:452
int workers_count()
Definition: event_scheduler.cc:828
bool post_init_event_thread(THD *thd)
Definition: event_scheduler.cc:167
~Event_scheduler()
Definition: event_scheduler.cc:468
bool start(int *err_no)
Starts the scheduler (again).
Definition: event_scheduler.cc:488
Some integer typedefs for easier portability.
unsigned long long int ulonglong
Definition: my_inttypes.h:56
Instrumentation helpers for conditions.
ABI for instrumented mutexes.
Performance schema instrumentation interface.
required string event
Definition: replication_group_member_actions.proto:32
Stage instrument information.
Definition: psi_stage_bits.h:74
An instrumented cond structure.
Definition: mysql_cond_bits.h:50
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:50