MySQL 9.0.0
Source Code Documentation
leave_group_on_failure Struct Reference

Structure that holds the actions taken by the plugin when the member leaves the group after a failure. More...

#include <leave_group_on_failure.h>

Public Types

enum  enum_actions {
  ALREADY_LEFT_GROUP = 0 , SKIP_SET_READ_ONLY , SKIP_LEAVE_VIEW_WAIT , CLEAN_GROUP_MEMBERSHIP ,
  STOP_APPLIER , HANDLE_EXIT_STATE_ACTION , HANDLE_AUTO_REJOIN , ACTION_MAX
}
 Actions taken by the plugin when the member leaves the group after a failure. More...
 
using mask = std::bitset< ACTION_MAX >
 

Static Public Member Functions

static void leave (const mask &actions, longlong error_to_log, Notification_context *caller_notification_context, const char *exit_state_action_abort_log_message)
 Do the instructed actions after a failure. More...
 

Detailed Description

Structure that holds the actions taken by the plugin when the member leaves the group after a failure.

Member Typedef Documentation

◆ mask

Member Enumeration Documentation

◆ enum_actions

Actions taken by the plugin when the member leaves the group after a failure.

Enumerator
ALREADY_LEFT_GROUP 
SKIP_SET_READ_ONLY 
SKIP_LEAVE_VIEW_WAIT 
CLEAN_GROUP_MEMBERSHIP 
STOP_APPLIER 
HANDLE_EXIT_STATE_ACTION 
HANDLE_AUTO_REJOIN 
ACTION_MAX 

Member Function Documentation

◆ leave()

void leave_group_on_failure::leave ( const mask actions,
longlong  error_to_log,
Notification_context caller_notification_context,
const char *  exit_state_action_abort_log_message 
)
static

Do the instructed actions after a failure.

Parameters
[in]actionsActions performed.
[in]error_to_logError logged into error log.
[in]caller_notification_contextIf defined the member state change notification will update this notification context and the notification signal responsibility belongs to the caller. If not defined (nullptr) a notification will be sent by this function.
[in]exit_state_action_abort_log_messageThe log message used on abort_plugin_process() if that function is called.

The documentation for this struct was generated from the following files: