|
| static bool | is_semi_sync_dump () |
| |
| static int | repl_semi_report_binlog_update (Binlog_storage_param *, const char *log_file, my_off_t log_pos) |
| |
| static int | repl_semi_report_binlog_sync (Binlog_storage_param *, const char *log_file, my_off_t log_pos) |
| |
| static int | repl_semi_report_before_dml (Trans_param *, int &) |
| |
| static int | repl_semi_report_before_commit (Trans_param *) |
| |
| static int | repl_semi_report_before_rollback (Trans_param *) |
| |
| static int | repl_semi_report_commit (Trans_param *param) |
| |
| static int | repl_semi_report_rollback (Trans_param *param) |
| |
| static int | repl_semi_report_begin (Trans_param *, int &) |
| |
| static int | repl_semi_binlog_dump_start (Binlog_transmit_param *param, const char *log_file, my_off_t log_pos) |
| |
| static int | repl_semi_binlog_dump_end (Binlog_transmit_param *param) |
| |
| static int | repl_semi_reserve_header (Binlog_transmit_param *, unsigned char *header, unsigned long size, unsigned long *len) |
| |
| static int | repl_semi_before_send_event (Binlog_transmit_param *param, unsigned char *packet, unsigned long, const char *log_file, my_off_t log_pos) |
| |
| static int | repl_semi_after_send_event (Binlog_transmit_param *param, const char *event_buf, unsigned long, const char *skipped_log_file, my_off_t skipped_log_pos) |
| |
| static int | repl_semi_reset_source (Binlog_transmit_param *) |
| |
| static void | fix_rpl_semi_sync_source_timeout (MYSQL_THD thd, SYS_VAR *var, void *ptr, const void *val) |
| |
| static void | fix_rpl_semi_sync_source_trace_level (MYSQL_THD thd, SYS_VAR *var, void *ptr, const void *val) |
| |
| static void | fix_rpl_semi_sync_source_wait_no_replica (MYSQL_THD thd, SYS_VAR *var, void *ptr, const void *val) |
| |
| static void | fix_rpl_semi_sync_source_enabled (MYSQL_THD thd, SYS_VAR *var, void *ptr, const void *val) |
| |
| static void | fix_rpl_semi_sync_source_wait_for_replica_count (MYSQL_THD thd, SYS_VAR *var, void *ptr, const void *val) |
| |
| static | MYSQL_SYSVAR_BOOL (enabled, rpl_semi_sync_source_enabled, PLUGIN_VAR_OPCMDARG, "Enable semi-synchronous replication source (disabled by default). ", nullptr, &fix_rpl_semi_sync_source_enabled, 0) |
| |
| static | MYSQL_SYSVAR_ULONG (timeout, rpl_semi_sync_source_timeout, PLUGIN_VAR_OPCMDARG, "The timeout value (in milliseconds) for semi-synchronous replication on " "the source. If less than " "rpl_semi_sync_source_wait_for_replica_count " "replicas have replied after this amount of time, switch to asynchronous " "replication.", nullptr, fix_rpl_semi_sync_source_timeout, 10000, 0, ~0UL, 1) |
| |
| static | MYSQL_SYSVAR_BOOL (wait_no_replica, rpl_semi_sync_source_wait_no_replica, PLUGIN_VAR_OPCMDARG, "If enabled, revert to asynchronous replication only if less " "than " "rpl_semi_sync_source_wait_for_replica_count " "replicas have replied when " "rpl_semi_sync_source_timeout " "seconds have passed. If disabled, revert to asynchronous " "replication also as soon as the number of connected replicas " "drops below " "rpl_semi_sync_source_wait_for_replica_count.", nullptr, &fix_rpl_semi_sync_source_wait_no_replica, 1) |
| |
| static | MYSQL_SYSVAR_ULONG (trace_level, rpl_semi_sync_source_trace_level, PLUGIN_VAR_OPCMDARG, "The tracing level for semi-sync replication.", nullptr, &fix_rpl_semi_sync_source_trace_level, 32, 0, ~0UL, 1) |
| |
| static | MYSQL_SYSVAR_ENUM (wait_point, rpl_semi_sync_source_wait_point, PLUGIN_VAR_OPCMDARG, "The semisync source plugin can wait for replica replies at one of two " "alternative points: AFTER_SYNC or AFTER_COMMIT. " "AFTER_SYNC is the default value. AFTER_SYNC means that the " "source-side semisynchronous plugin waits for the replies just after it " "has synced the binary log file (or would have synced, but may have " "skipped it, when sync_binlog!=1), but before it has committed in the " "engine on the source side. Therefore, it guarantees that no other " "sessions on the source can see the effects of the transaction before " "the replica has received it. " "AFTER_COMMIT means that the source-side semisynchronous plugin " "waits for the replies from the replica just after the source has " "committed the transaction in the engine, and before it sends an ACK " "packet to the client session. Other sessions may see the effects of " "the transaction before it has been replicated, even though the current " "session is still waiting for the replies from the replica.", nullptr, nullptr, WAIT_AFTER_SYNC, &wait_point_typelib) |
| |
| static | MYSQL_SYSVAR_UINT (wait_for_replica_count, rpl_semi_sync_source_wait_for_replica_count, PLUGIN_VAR_OPCMDARG, "The number of replicas that need to acknowledge that they have " "received a transaction, before the transaction can complete on " "the source.", nullptr, &fix_rpl_semi_sync_source_wait_for_replica_count, 1, 1, 65535, 1) |
| |
| static void | init_semisync_psi_keys (void) |
| |
| static int | semi_sync_source_plugin_init (void *p) |
| |
| static int | semi_sync_source_plugin_check_uninstall (void *) |
| |
| static int | semi_sync_source_plugin_deinit (void *p) |
| |
| | mysql_declare_plugin (semi_sync_source) |
| |