24#ifndef SEMISYNC_SOURCE_ACK_RECEIVER_DEFINED 
   25#define SEMISYNC_SOURCE_ACK_RECEIVER_DEFINED 
Ack_receiver is responsible to control ack receive thread and maintain replica information used by ac...
Definition: semisync_source_ack_receiver.h:61
 
void setTraceLevel(unsigned long trace_level)
Definition: semisync_source_ack_receiver.h:106
 
void wait_for_replica_connection()
Definition: semisync_source_ack_receiver.cc:231
 
Ack_receiver()
Definition: semisync_source_ack_receiver.cc:63
 
my_thread_handle m_pid
Definition: semisync_source_ack_receiver.h:126
 
bool start()
Start ack receive thread.
Definition: semisync_source_ack_receiver.cc:86
 
void stop()
Stop ack receive thread.
Definition: semisync_source_ack_receiver.cc:113
 
bool init()
Definition: semisync_source_ack_receiver.h:108
 
uint8 m_status
Definition: semisync_source_ack_receiver.h:116
 
mysql_cond_t m_cond
Definition: semisync_source_ack_receiver.h:122
 
mysql_mutex_t m_mutex
Definition: semisync_source_ack_receiver.h:121
 
void remove_replica(THD *thd)
Notify ack receiver not to receive ack on the dump session.
Definition: semisync_source_ack_receiver.cc:176
 
Ack_receiver & operator=(const Ack_receiver &ack_receiver)
 
status
Definition: semisync_source_ack_receiver.h:115
 
@ ST_STOPPING
Definition: semisync_source_ack_receiver.h:115
 
@ ST_UP
Definition: semisync_source_ack_receiver.h:115
 
@ ST_DOWN
Definition: semisync_source_ack_receiver.h:115
 
void set_stage_info(const PSI_stage_info &stage)
Definition: semisync_source_ack_receiver.cc:224
 
Replica_vector m_replicas
Definition: semisync_source_ack_receiver.h:125
 
void run()
The core of ack receive thread.
Definition: semisync_source_ack_receiver.cc:245
 
bool add_replica(THD *thd)
Notify ack receiver to receive acks on the dump session.
Definition: semisync_source_ack_receiver.cc:137
 
~Ack_receiver()
Definition: semisync_source_ack_receiver.cc:75
 
bool m_replicas_changed
Definition: semisync_source_ack_receiver.h:124
 
Ack_receiver(const Ack_receiver &ack_receiver)
 
Base class for semi-sync source and replica classes.
Definition: semisync.h:83
 
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:36
 
unsigned long trace_level_
Definition: semisync.h:50
 
Some integer typedefs for easier portability.
 
uint8_t uint8
Definition: my_inttypes.h:63
 
Common #defines and includes for file and socket I/O.
 
Defines to make different thread packages compatible.
 
int my_socket
Definition: mysql.h:65
 
unsigned long rpl_semi_sync_source_trace_level
Definition: semisync_source.cc:47
 
bool rpl_semi_sync_source_enabled
Definition: semisync_source.cc:45
 
Replica_vector::iterator Replica_vector_it
Definition: semisync_source_ack_receiver.h:49
 
Ack_receiver * ack_receiver
Definition: semisync_source_plugin.cc:45
 
std::vector< Replica > Replica_vector
Definition: semisync_source_ack_receiver.h:48
 
my_socket fd
The real socket descriptor.
Definition: mysql_socket_bits.h:37
 
Stage instrument information.
Definition: psi_stage_bits.h:74
 
Definition: semisync_source_ack_receiver.h:37
 
EnumStatus m_status
Definition: semisync_source_ack_receiver.h:43
 
Vio * vio
Definition: semisync_source_ack_receiver.h:40
 
EnumStatus
Definition: semisync_source_ack_receiver.h:38
 
my_socket sock_fd() const
Definition: semisync_source_ack_receiver.h:45
 
uint server_id
Definition: semisync_source_ack_receiver.h:41
 
mysql_compress_context compress_ctx
Definition: semisync_source_ack_receiver.h:42
 
uint32_t thread_id
Definition: semisync_source_ack_receiver.h:39
 
Definition: violite.h:320
 
MYSQL_SOCKET mysql_socket
Definition: violite.h:321
 
Definition: my_thread_bits.h:58
 
Compression context information.
Definition: my_compress.h:74
 
An instrumented cond structure.
Definition: mysql_cond_bits.h:50
 
An instrumented mutex structure.
Definition: mysql_mutex_bits.h:50