24#ifndef GROUP_ACTION_MESSAGE_INCLUDED
25#define GROUP_ACTION_MESSAGE_INCLUDED
117 int32 &transaction_monitor_timeout_arg);
225 const unsigned char *
end)
override;
Definition: group_action_message.h:33
enum_action_initiator_and_action m_action_initiator
Group action identifier.
Definition: group_action_message.h:250
enum_action_message_phase group_action_phase
If it is a start, stop or other message.
Definition: group_action_message.h:232
int32 get_transaction_monitor_timeout()
Returns the running_transactions_timeout.
Definition: group_action_message.cc:195
enum_action_message_phase
Enum for the phase of the action in the message.
Definition: group_action_message.h:70
@ ACTION_PHASE_END
Definition: group_action_message.h:75
@ ACTION_ABORT_PHASE
Definition: group_action_message.h:74
@ ACTION_UNKNOWN_PHASE
Definition: group_action_message.h:71
@ ACTION_END_PHASE
Definition: group_action_message.h:73
@ ACTION_START_PHASE
Definition: group_action_message.h:72
int32 m_transaction_monitor_timeout
The number of seconds to wait before setting the kill flag for the transactions that did not reach co...
Definition: group_action_message.h:248
int32 return_value
Is there any return value associated to this action.
Definition: group_action_message.h:235
Gcs_protocol_version const & get_gcs_protocol()
Returns the GCS protocol this group action wants the group to change to.
Definition: group_action_message.cc:189
void set_action_initiator(const enum_action_initiator_and_action initiator)
Set the action initiator.
Definition: group_action_message.h:166
void set_return_value(int return_value_arg)
Set the return value for this message.
Definition: group_action_message.h:158
Group_action_message()
Message constructor.
Definition: group_action_message.cc:28
const std::string & get_primary_to_elect_uuid()
Returns this group action primary to be elected uuid.
Definition: group_action_message.cc:184
void encode_payload(std::vector< unsigned char > *buffer) const override
Encodes the message contents for transmission.
Definition: group_action_message.cc:133
enum_action_message_phase get_group_action_message_phase()
Returns this group action message phase.
Definition: group_action_message.h:146
int32 get_return_value()
Definition: group_action_message.h:180
enum_action_message_type get_group_action_message_type()
Returns this group action message type.
Definition: group_action_message.h:141
Gcs_protocol_version gcs_protocol
The GCS protocol version to change to.
Definition: group_action_message.h:243
const enum_action_initiator_and_action & get_action_initiator()
Definition: group_action_message.h:173
enum_action_initiator_and_action
Enum to identify initiator and action.
Definition: group_action_message.h:79
@ ACTION_INITIATOR_UNKNOWN
Definition: group_action_message.h:81
@ ACTION_UDF_SWITCH_TO_SINGLE_PRIMARY_MODE
Definition: group_action_message.h:87
@ ACTION_UDF_SWITCH_TO_MULTI_PRIMARY_MODE
Definition: group_action_message.h:83
@ ACTION_UDF_SET_PRIMARY
Definition: group_action_message.h:85
@ ACTION_INITIATOR_END
Definition: group_action_message.h:93
@ ACTION_UDF_SWITCH_TO_SINGLE_PRIMARY_MODE_UUID
Definition: group_action_message.h:89
@ ACTION_UDF_COMMUNICATION_PROTOCOL_MESSAGE
Definition: group_action_message.h:91
static enum_action_message_type get_action_type(const uchar *buf)
Check what is the action that this message encodes from a buffer.
Definition: group_action_message.cc:171
~Group_action_message() override
Message destructor.
void set_group_action_message_phase(enum_action_message_phase phase)
Definition: group_action_message.h:150
enum_action_message_type
Enum for the types of message / actions.
Definition: group_action_message.h:57
@ ACTION_SET_COMMUNICATION_PROTOCOL_MESSAGE
Definition: group_action_message.h:65
@ ACTION_UNKNOWN_MESSAGE
Definition: group_action_message.h:59
@ ACTION_PRIMARY_ELECTION_MESSAGE
Definition: group_action_message.h:63
@ ACTION_MULTI_PRIMARY_MESSAGE
Definition: group_action_message.h:61
@ ACTION_MESSAGE_END
Definition: group_action_message.h:67
void decode_payload(const unsigned char *buffer, const unsigned char *end) override
Message decoding method.
Definition: group_action_message.cc:73
enum_payload_item_type
Definition: group_action_message.h:35
@ PIT_ACTION_TYPE
Definition: group_action_message.h:39
@ PIT_ACTION_TRANSACTION_MONITOR_TIMEOUT
Definition: group_action_message.h:49
@ PIT_MAX
Definition: group_action_message.h:53
@ PIT_ACTION_PHASE
Definition: group_action_message.h:41
@ PIT_UNKNOWN
Definition: group_action_message.h:37
@ PIT_ACTION_SET_COMMUNICATION_PROTOCOL_VERSION
Definition: group_action_message.h:47
@ PIT_ACTION_PRIMARY_ELECTION_UUID
Definition: group_action_message.h:45
@ PIT_ACTION_INITIATOR
Definition: group_action_message.h:51
@ PIT_ACTION_RETURN_VALUE
Definition: group_action_message.h:43
std::string primary_election_uuid
The uuid for election, can be empty if not defined.
Definition: group_action_message.h:240
enum_action_message_type group_action_type
The action type for this message.
Definition: group_action_message.h:229
This is the base GCS plugin message.
Definition: gcs_plugin_messages.h:64
Gcs_protocol_version
The GCS protocol versions.
Definition: gcs_types.h:128
Some integer typedefs for easier portability.
unsigned char uchar
Definition: my_inttypes.h:52
int32_t int32
Definition: my_inttypes.h:66
Definition: buf0block_hint.cc:30
mutable_buffer buffer(void *p, size_t n) noexcept
Definition: buffer.h:420
Cursor end()
A past-the-end Cursor.
Definition: rules_table_service.cc:192
required string type
Definition: replication_group_member_actions.proto:34