MySQL 8.4.2
Source Code Documentation
|
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_xcom_interface.h"
#include <assert.h>
#include <ctype.h>
#include <stdio.h>
#include <algorithm>
#include <cstdarg>
#include <fstream>
#include <iostream>
#include <sstream>
#include <vector>
#include "my_compiler.h"
#include "plugin/group_replication/libmysqlgcs/include/mysql/gcs/gcs_types.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_internal_message.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_message_stage_lz4.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_message_stage_split.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_message_stages.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_xcom_group_member_information.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_xcom_networking.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_xcom_notification.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/gcs_xcom_utils.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/network/include/network_management_interface.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/site_struct.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/sock_probe.h"
#include "plugin/group_replication/libmysqlgcs/src/bindings/xcom/xcom/synode_no.h"
#include "xdr_gen/xcom_vp.h"
Functions | |
uint32_t | get_my_xcom_id () |
void | cb_xcom_receive_data (synode_no message_id, synode_no origin, site_def const *site, node_set nodes, u_int size, synode_no last_removed, char *data) |
void | do_cb_xcom_receive_data (synode_no message_id, synode_no origin, Gcs_xcom_nodes *xcom_nodes, synode_no last_removed, u_int size, char *data) |
void | cb_xcom_receive_local_view (synode_no config_id, node_set nodes) |
void | do_cb_xcom_receive_local_view (synode_no config_id, Gcs_xcom_nodes *xcom_nodes, synode_no max_synode) |
void | cb_xcom_receive_global_view (synode_no config_id, synode_no message_id, node_set nodes, xcom_event_horizon event_horizon) |
void | do_cb_xcom_receive_global_view (synode_no config_id, synode_no message_id, Gcs_xcom_nodes *xcom_nodes, xcom_event_horizon event_horizon, synode_no max_synode) |
void | cb_xcom_comms (int status) |
void | cb_xcom_ready (int status) |
void | cb_xcom_exit (int status) |
void | cb_xcom_expel (int status) |
Callback function used by XCom to signal that a node has left the group because of a die_op or a view where the node does not belong to. More... | |
void | do_cb_xcom_expel () |
synode_no | cb_xcom_get_app_snap (blob *gcs_snap) |
int | cb_xcom_get_should_exit () |
void | cb_xcom_handle_app_snap (blob *store_snap, synode_no start, synode_no end) |
int | cb_xcom_socket_accept (int fd, site_def const *xcom_config) |
Callback function used by XCOM to check whether an incoming connection should be accepted or not. More... | |
xcom_input_request_ptr | cb_xcom_input_try_pop () |
void | cb_xcom_logger (const int64_t level, const char *message) |
Callback function used by XCOM to write information, warning and error messages in coordination with the GCS layer. More... | |
void | cb_xcom_debugger (const char *format,...) |
Callback function used by XCOM to write debug messages in coordination with the GCS layer. More... | |
int | cb_xcom_debugger_check (const int64_t options) |
Callback function used by XCOM to check whether a debug module is enabled or not. More... | |
void | cleanup_xcom () |
void | start_ssl () |
static void | do_cb_xcom_receive_data_state_exchange (Gcs_packet &&packet, std::unique_ptr< Gcs_xcom_nodes > &&xcom_nodes, Gcs_xcom_communication &xcom_communication, Gcs_xcom_control &xcom_control) |
static void | do_cb_xcom_receive_data_user (Gcs_packet &&packet, std::unique_ptr< Gcs_xcom_nodes > &&xcom_nodes, Gcs_xcom_communication &xcom_communication) |
static bool | must_filter_xcom_view_v1 (synode_no config_id, Gcs_xcom_nodes const &xcom_nodes, xcom_event_horizon event_horizon) |
static bool | must_filter_xcom_view_v3 (Gcs_xcom_nodes const &xcom_nodes) |
static bool | must_filter_xcom_view (synode_no config_id, Gcs_xcom_nodes const &xcom_nodes, xcom_event_horizon event_horizon, Gcs_protocol_version protocol) |
int | cb_xcom_match_port (xcom_port if_port) |
Variables | |
static Gcs_xcom_config | last_accepted_xcom_config |
int | xcom_local_port = 0 |
static Gcs_xcom_proxy * | s_xcom_proxy |
static Gcs_xcom_engine * | gcs_engine |
void cb_xcom_comms | ( | int | status | ) |
void cb_xcom_debugger | ( | const char * | format, |
... | |||
) |
Callback function used by XCOM to write debug messages in coordination with the GCS layer.
The variadic signature allows XCOM to call this function without forcing any preliminary processing on the message, meaning that the cost is minimal and there is no need to use an intermediate buffer. The GCS layer will then be responsible for writing the message content directly to the final buffer.
int cb_xcom_debugger_check | ( | const int64_t | options | ) |
Callback function used by XCOM to check whether a debug module is enabled or not.
void cb_xcom_exit | ( | int | status | ) |
void cb_xcom_expel | ( | int | status | ) |
Callback function used by XCom to signal that a node has left the group because of a die_op
or a view where the node does not belong to.
synode_no cb_xcom_get_app_snap | ( | blob * | gcs_snap | ) |
int cb_xcom_get_should_exit | ( | ) |
void cb_xcom_handle_app_snap | ( | blob * | store_snap, |
synode_no | start, | ||
synode_no | end | ||
) |
xcom_input_request_ptr cb_xcom_input_try_pop | ( | ) |
void cb_xcom_logger | ( | const int64_t | level, |
const char * | message | ||
) |
Callback function used by XCOM to write information, warning and error messages in coordination with the GCS layer.
int cb_xcom_match_port | ( | xcom_port | if_port | ) |
void cb_xcom_ready | ( | int | status | ) |
void cb_xcom_receive_data | ( | synode_no | message_id, |
synode_no | origin, | ||
site_def const * | site, | ||
node_set | nodes, | ||
u_int | size, | ||
synode_no | last_removed, | ||
char * | data | ||
) |
void cb_xcom_receive_global_view | ( | synode_no | config_id, |
synode_no | message_id, | ||
node_set | nodes, | ||
xcom_event_horizon | event_horizon | ||
) |
void cb_xcom_receive_local_view | ( | synode_no | config_id, |
node_set | nodes | ||
) |
int cb_xcom_socket_accept | ( | int | fd, |
site_def const * | xcom_config | ||
) |
Callback function used by XCOM to check whether an incoming connection should be accepted or not.
void cleanup_xcom | ( | ) |
void do_cb_xcom_expel | ( | ) |
void do_cb_xcom_receive_data | ( | synode_no | message_id, |
synode_no | origin, | ||
Gcs_xcom_nodes * | xcom_nodes, | ||
synode_no | last_removed, | ||
u_int | size, | ||
char * | data | ||
) |
|
inlinestatic |
|
inlinestatic |
void do_cb_xcom_receive_global_view | ( | synode_no | config_id, |
synode_no | message_id, | ||
Gcs_xcom_nodes * | xcom_nodes, | ||
xcom_event_horizon | event_horizon, | ||
synode_no | max_synode | ||
) |
void do_cb_xcom_receive_local_view | ( | synode_no | config_id, |
Gcs_xcom_nodes * | xcom_nodes, | ||
synode_no | max_synode | ||
) |
uint32_t get_my_xcom_id | ( | ) |
|
static |
|
static |
|
static |
void start_ssl | ( | ) |
|
static |
|
static |
|
static |
int xcom_local_port = 0 |