MySQL 8.4.2
Source Code Documentation
|
#include <assert.h>
#include <mysql.h>
#include <mysqld_error.h>
#include <stdlib.h>
#include <sys/types.h>
#include "my_inttypes.h"
#include "my_macros.h"
#include "plugin/semisync/semisync_replica.h"
#include "sql/current_thd.h"
#include "sql/derror.h"
#include "sql/raii/sentry.h"
#include "sql/sql_error.h"
#include "sql/sql_lex.h"
Macros | |
#define | SEMI_SYNC_PLUGIN_NAME "rpl_semi_sync_replica" |
#define | OTHER_SEMI_SYNC_PLUGIN_NAME "rpl_semi_sync_slave" |
#define | STATUS_VAR_PREFIX "Rpl_semi_sync_replica_" |
Variables | |
ReplSemiSyncSlave * | repl_semisync = nullptr |
bool | semi_sync_need_reply = false |
static const mysql_service_registry_t * | reg_srv = nullptr |
const mysql_service_log_builtins_t * | log_bi = nullptr |
accessor built-ins More... | |
const mysql_service_log_builtins_string_t * | log_bs = nullptr |
string built-ins More... | |
static SYS_VAR * | semi_sync_slave_system_vars [] |
static SHOW_VAR | semi_sync_slave_status_vars [] |
Binlog_relay_IO_observer | relay_io_observer |
struct Mysql_replication | semi_sync_slave_plugin |
mysql_declare_plugin_end | |
#define OTHER_SEMI_SYNC_PLUGIN_NAME "rpl_semi_sync_slave" |
#define SEMI_SYNC_PLUGIN_NAME "rpl_semi_sync_replica" |
#define STATUS_VAR_PREFIX "Rpl_semi_sync_replica_" |
|
static |
|
static |
|
static |
Send a query to source server to determine if it supports semisync.
This checks if rpl_semi_sync_source_enabled or rpl_semi_sync_master_enabled is defined on the source.
mysql | Existing connection to the source server. |
name | The name to use for the "source" part of the variable name in this check: either "source" or "master". |
1 | Source supports semisync. |
0 | Source does not support semisync. |
-1 | Error occurred while checking if source supports semisync. This function reports an error to the log in this case. |
|
static |
Return true if this is the new library and the old library is installed, or vice versa.
true | This is semisync_master, and semisync_source is installed already, or this is semisync_source, and semisync_master is installed already. |
false | Otherwise |
mysql_declare_plugin | ( | semi_sync_slave | ) |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
int repl_semi_slave_sql_start | ( | Binlog_relay_IO_param * | ) |
|
static |
|
static |
|
static |
|
static |
const mysql_service_log_builtins_t* log_bi = nullptr |
accessor built-ins
accessor built-ins
const mysql_service_log_builtins_string_t* log_bs = nullptr |
string built-ins
mysql_declare_plugin_end |
|
static |
Binlog_relay_IO_observer relay_io_observer |
ReplSemiSyncSlave* repl_semisync = nullptr |
bool semi_sync_need_reply = false |
struct Mysql_replication semi_sync_slave_plugin |
|
static |
|
static |