OpenCBDC Transaction Processor
Loading...
Searching...
No Matches
tx_error_messages.hpp File Reference

Messages atomizers and shards can use to transmit errors to the watchtower, and which the watchtower can use to communicate errors to clients. More...

#include "uhs/transaction/transaction.hpp"
#include "util/common/hashmap.hpp"
#include "util/common/variant_overloaded.hpp"
#include "util/serialization/serializer.hpp"
#include <memory>
#include <string>
#include <unordered_set>
#include <variant>
#include <vector>
Include dependency graph for tx_error_messages.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  cbdc::watchtower::tx_error_sync
 Indicates a shard that tried to process a given transaction was out of sync with the atomizer, and the transaction should be retried. More...
 
class  cbdc::watchtower::tx_error_inputs_dne
 Indicates a shard that tried to process a given transaction could not locate one or more of the transaction's inputs it expected to possess. More...
 
struct  cbdc::watchtower::tx_error_stxo_range
 Indicates that a shard did not attest to this transaction recently enough for the atomizer to check it against the STXO cache. More...
 
struct  cbdc::watchtower::tx_error_incomplete
 Indicates that the atomizer did not receive enough attestations for a particular transaction from shards before it had to clean up the transaction and free up space for others. More...
 
class  cbdc::watchtower::tx_error_inputs_spent
 Indicates that the given transaction contains one or more inputs that have already been spent in other transactions sent to the atomizer. More...
 
class  cbdc::watchtower::tx_error
 Wrapper for transaction errors. More...
 

Namespaces

namespace  cbdc
 
namespace  cbdc::watchtower
 

Typedefs

using cbdc::watchtower::tx_error_info
 

Functions

auto cbdc::operator<< (cbdc::serializer &packet, const cbdc::watchtower::tx_error_inputs_dne &err) -> cbdc::serializer &
 
auto cbdc::operator>> (cbdc::serializer &packet, cbdc::watchtower::tx_error_inputs_dne &err) -> cbdc::serializer &
 
auto cbdc::operator<< (cbdc::serializer &packet, const cbdc::watchtower::tx_error_inputs_spent &err) -> cbdc::serializer &
 
auto cbdc::operator>> (cbdc::serializer &packet, cbdc::watchtower::tx_error_inputs_spent &err) -> cbdc::serializer &
 
auto cbdc::operator<< (cbdc::serializer &packet, const cbdc::watchtower::tx_error &err) -> cbdc::serializer &
 
auto cbdc::operator>> (cbdc::serializer &packet, cbdc::watchtower::tx_error &err) -> cbdc::serializer &
 

Detailed Description

Messages atomizers and shards can use to transmit errors to the watchtower, and which the watchtower can use to communicate errors to clients.

Definition in file tx_error_messages.hpp.