6#ifndef OPENCBDC_TX_SRC_PARSEC_RUNTIME_LOCKING_SHARD_MESSAGES_H_
7#define OPENCBDC_TX_SRC_PARSEC_RUNTIME_LOCKING_SHARD_MESSAGES_H_
Buffer to store and retrieve byte data.
std::optional< shard_error > prepare_return_type
Return type from a prepare operation. An error, if applicable.
std::variant< value_type, shard_error > try_lock_return_type
Return type from a try lock operation.
std::variant< get_tickets_success_type, error_code > get_tickets_return_type
Return type from a get tickets operation.
std::variant< tickets_type, error_code > get_tickets_return_type
Return type from a get tickets operation.
std::unordered_map< key_type, value_type, hashing::const_sip_hash< key_type > > state_type
Type for state updates to a shard.
std::optional< error_code > return_type
Return type from a prepare operation. An error, if applicable.
std::variant< replicated_prepare_request, commit_request, finish_request, replicated_get_tickets_request > replicated_request
Shard replicated state machine request type.
std::variant< try_lock_request, prepare_request, commit_request, rollback_request, finish_request, get_tickets_request > request
RPC request message type.
std::variant< replicated_shard_interface::return_type, replicated_shard_interface::get_tickets_return_type > replicated_response
Shard replicated state machine response type.
std::variant< interface::try_lock_return_type, interface::prepare_return_type, interface::get_tickets_return_type > response
RPC response message type.
parsec::ticket_machine::ticket_number_type ticket_number_type
Type for a ticket number.
size_t broker_id_type
Type for the ID of a broker.
std:: unordered_map< key_type, value_type, hashing::const_sip_hash< key_type > > state_update_type
Type for state updates to a shard. A map of keys and their new values.
lock_type
Types of key lock supported by shards.
ticket_number_type m_ticket_number
Ticket number.
ticket_number_type m_ticket_number
Ticket number.
Get tickets request message.
broker_id_type m_broker_id
Broker ID.
state_update_type m_state_updates
State updates to apply.
ticket_number_type m_ticket_number
Ticket number.
broker_id_type m_broker_id
ID of broker managing ticket.
Message for retrieving unfinished tickets from the replicated state machine.
Message for replicating a prepare request.
ticket_number_type m_ticket_number
Ticket number being prepared.
replicated_shard_interface::state_type m_state_update
State updates to apply if the ticket is committed.
broker_id_type m_broker_id
Broker ID responsible for the ticket.
Rollback request message.
ticket_number_type m_ticket_number
Ticket number.
Try lock request message.
ticket_number_type m_ticket_number
Ticket number.
broker_id_type m_broker_id
ID of broker managing ticket.
bool m_first_lock
Flag for when this is the first lock.
key_type m_key
Key for which to request lock.
lock_type m_locktype
Lock type to request.