create_transaction Action

Implement the create_transaction DoAction to provide transaction identifiers for consistent reads and transactional isolation.

The create_transaction action creates a new transaction and returns a unique transaction identifier. This identifier can be used in subsequent operations to group multiple statements within a single transaction.

Input Parameters

The action receives a single msgpack-serialized parameter:

struct AirportGetCatalogVersionParams
{
  string catalog_name;
  MSGPACK_DEFINE_MAP(catalog_name);
};

Return Value

The action must return a msgpack-encoded structure:

struct GetTransactionIdentifierResult
{
  std::optional<std::string> identifier;
  MSGPACK_DEFINE_MAP(identifier)
};