23#ifndef GROUP_ACTION_MESSAGE_INCLUDED
24#define GROUP_ACTION_MESSAGE_INCLUDED
118 int32 &transaction_monitor_timeout_arg);
238 const unsigned char *
end)
override;
Definition: group_action_message.h:32
enum_action_initiator_and_action m_action_initiator
Group action identifier.
Definition: group_action_message.h:263
enum_action_message_phase group_action_phase
If it is a start, stop or other message.
Definition: group_action_message.h:245
int32 get_transaction_monitor_timeout()
Returns the running_transactions_timeout.
Definition: group_action_message.cc:197
enum_action_message_phase
Enum for the phase of the action in the message.
Definition: group_action_message.h:71
@ ACTION_PHASE_END
Definition: group_action_message.h:76
@ ACTION_ABORT_PHASE
Definition: group_action_message.h:75
@ ACTION_UNKNOWN_PHASE
Definition: group_action_message.h:72
@ ACTION_END_PHASE
Definition: group_action_message.h:74
@ ACTION_START_PHASE
Definition: group_action_message.h:73
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:261
int32 return_value
Is there any return value associated to this action.
Definition: group_action_message.h:248
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:191
void set_action_initiator(const enum_action_initiator_and_action initiator)
Set the action initiator.
Definition: group_action_message.h:167
void set_return_value(int return_value_arg)
Set the return value for this message.
Definition: group_action_message.h:159
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:186
void encode_payload(std::vector< unsigned char > *buffer) const override
Encodes the message contents for transmission.
Definition: group_action_message.cc:132
enum_action_message_phase get_group_action_message_phase()
Returns this group action message phase.
Definition: group_action_message.h:147
static uint64_t get_sent_timestamp(const unsigned char *buffer, size_t length)
Return the time at which the message contained in the buffer was sent.
Definition: group_action_message.cc:201
int32 get_return_value()
Definition: group_action_message.h:181
enum_action_message_type get_group_action_message_type()
Returns this group action message type.
Definition: group_action_message.h:142
Gcs_protocol_version gcs_protocol
The GCS protocol version to change to.
Definition: group_action_message.h:256
const enum_action_initiator_and_action & get_action_initiator()
Definition: group_action_message.h:174
enum_action_initiator_and_action
Enum to identify initiator and action.
Definition: group_action_message.h:80
@ ACTION_INITIATOR_UNKNOWN
Definition: group_action_message.h:82
@ ACTION_UDF_SWITCH_TO_SINGLE_PRIMARY_MODE
Definition: group_action_message.h:88
@ ACTION_UDF_SWITCH_TO_MULTI_PRIMARY_MODE
Definition: group_action_message.h:84
@ ACTION_UDF_SET_PRIMARY
Definition: group_action_message.h:86
@ ACTION_INITIATOR_END
Definition: group_action_message.h:94
@ ACTION_UDF_SWITCH_TO_SINGLE_PRIMARY_MODE_UUID
Definition: group_action_message.h:90
@ ACTION_UDF_COMMUNICATION_PROTOCOL_MESSAGE
Definition: group_action_message.h:92
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:173
~Group_action_message() override
Message destructor.
void set_group_action_message_phase(enum_action_message_phase phase)
Definition: group_action_message.h:151
enum_action_message_type
Enum for the types of message / actions.
Definition: group_action_message.h:58
@ ACTION_SET_COMMUNICATION_PROTOCOL_MESSAGE
Definition: group_action_message.h:66
@ ACTION_UNKNOWN_MESSAGE
Definition: group_action_message.h:60
@ ACTION_PRIMARY_ELECTION_MESSAGE
Definition: group_action_message.h:64
@ ACTION_MULTI_PRIMARY_MESSAGE
Definition: group_action_message.h:62
@ ACTION_MESSAGE_END
Definition: group_action_message.h:68
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:34
@ PIT_ACTION_TYPE
Definition: group_action_message.h:38
@ PIT_ACTION_TRANSACTION_MONITOR_TIMEOUT
Definition: group_action_message.h:48
@ PIT_MAX
Definition: group_action_message.h:54
@ PIT_ACTION_PHASE
Definition: group_action_message.h:40
@ PIT_UNKNOWN
Definition: group_action_message.h:36
@ PIT_SENT_TIMESTAMP
Definition: group_action_message.h:52
@ PIT_ACTION_SET_COMMUNICATION_PROTOCOL_VERSION
Definition: group_action_message.h:46
@ PIT_ACTION_PRIMARY_ELECTION_UUID
Definition: group_action_message.h:44
@ PIT_ACTION_INITIATOR
Definition: group_action_message.h:50
@ PIT_ACTION_RETURN_VALUE
Definition: group_action_message.h:42
std::string primary_election_uuid
The uuid for election, can be empty if not defined.
Definition: group_action_message.h:253
enum_action_message_type group_action_type
The action type for this message.
Definition: group_action_message.h:242
This is the base GCS plugin message.
Definition: gcs_plugin_messages.h:63
Gcs_protocol_version
The GCS protocol versions.
Definition: gcs_types.h:127
Some integer typedefs for easier portability.
unsigned char uchar
Definition: my_inttypes.h:51
int32_t int32
Definition: my_inttypes.h:65
Definition: buf0block_hint.cc:29
bool length(const dd::Spatial_reference_system *srs, const Geometry *g1, double *length, bool *null) noexcept
Computes the length of linestrings and multilinestrings.
Definition: length.cc:75
mutable_buffer buffer(void *p, size_t n) noexcept
Definition: buffer.h:417
Cursor end()
A past-the-end Cursor.
Definition: rules_table_service.cc:191
required string type
Definition: replication_group_member_actions.proto:33