Transaction related functions.
Functions | |
template<typename ConnectionProvider , typename TimeConstraint , typename CompletionToken > | |
decltype(auto) | ozo::begin (ConnectionProvider &&provider, TimeConstraint time_constraint, CompletionToken &&token) |
Start new transaction. More... | |
template<typename ConnectionProvider , typename CompletionToken > | |
decltype(auto) | ozo::begin (ConnectionProvider &&provider, CompletionToken &&token) |
Start new transaction. More... | |
template<typename T , typename Options , typename TimeConstraint , typename CompletionToken > | |
decltype(auto) | ozo::commit (transaction< T, Options > &&transaction, TimeConstraint t, CompletionToken &&token) |
Commits a transaction. More... | |
template<typename ConnectionProvider , typename CompletionToken > | |
decltype(auto) | ozo::commit (ConnectionProvider &&provider, CompletionToken &&token) |
Commits a transaction. More... | |
template<typename T , typename Options , typename TimeConstraint , typename CompletionToken > | |
decltype(auto) | ozo::rollback (transaction< T, Options > &&transaction, TimeConstraint t, CompletionToken &&token) |
Rollback a transaction. More... | |
template<typename ConnectionProvider , typename CompletionToken > | |
decltype(auto) | ozo::rollback (ConnectionProvider &&provider, CompletionToken &&token) |
Commits a transaction. More... | |
template<typename... Ts> | |
constexpr auto | ozo::get_transaction_isolation_level (const transaction< Ts... > &transaction) |
Retrieve's a transactions isolation level. More... | |
template<typename... Ts> | |
constexpr auto | ozo::get_transaction_mode (const transaction< Ts... > &transaction) |
Retrieve's a transactions transaction mode. More... | |
template<typename... Ts> | |
constexpr auto | ozo::get_transaction_deferrability (const transaction< Ts... > &transaction) |
Retrieve's a transactions deferrability. More... | |
decltype(auto) ozo::begin | ( | ConnectionProvider && | provider, |
CompletionToken && | token | ||
) |
Start new transaction.
This function is time constrain free shortcut to ozo::begin()
function. Its call is equal to ozo::begin(provider, ozo::none, out, token)
call.
provider | — ConnectionProvider to get connection from. |
token | — operation CompletionToken. |
References ozo::get_operation_initiator(), and ozo::none.
decltype(auto) ozo::begin | ( | ConnectionProvider && | provider, |
TimeConstraint | time_constraint, | ||
CompletionToken && | token | ||
) |
Start new transaction.
The function starts new transaction on a database. The function can be called as any of Boost.Asio asynchronous function with CompletionToken. The operation would be cancelled if time constrain is reached while performing.
provider | — ConnectionProvider to get connection from. |
time_constraint | — operation TimeConstraint ; this time constrain includes time for getting connection from provider. |
token | — operation CompletionToken. |
Transaction may be started with specialized options like isolation level, mode and so on. To specify options additional call of with_transaction_options
should be used.
there Options
are available items of ozo::transaction_options
.
For full example see examples/transaction.cpp.
Beginning a transaction:
decltype(auto) ozo::commit | ( | ConnectionProvider && | provider, |
CompletionToken && | token | ||
) |
Commits a transaction.
This function is time constrain free shortcut to ozo::commit()
function. Its call is equal to ozo::commit(std::move(transaction), ozo::none, token)
call.
transaction | — open transaction to commit. |
token | — operation CompletionToken . |
CompletionToken
. References ozo::none.
decltype(auto) ozo::commit | ( | transaction< T, Options > && | transaction, |
TimeConstraint | t, | ||
CompletionToken && | token | ||
) |
Commits a transaction.
The function commits transaction on a database. The function can be called as any of Boost.Asio asynchronous function with CompletionToken. The operation would be cancelled if time constrain is reached while performing.
transaction | — open transaction to commit. |
time_constraint | — operation TimeConstraint . |
token | — operation CompletionToken . |
CompletionToken
.For full example see examples/transaction.cpp.
Committing a transaction:
|
constexpr |
Retrieve's a transactions deferrability.
Deferrability is usually indicated using an instance of ozo::deferrable_mode, but can also be any other type with a compile-time static ::value convertible to bool. ozo::none
indicates no explicit deferrability was set.
transaction | transaction to get the deferrability from |
References ozo::transaction_options::deferrability, ozo::get_option(), ozo::none, and ozo::transaction< Connection, Options >::options().
|
constexpr |
Retrieve's a transactions isolation level.
The isolation level can either be an instance of one of the child types of ozo::isolation_level or ozo::none
if no level was explicitly set.
transaction | transaction to get the isolation level from |
References ozo::get_option(), ozo::transaction_options::isolation_level, ozo::none, and ozo::transaction< Connection, Options >::options().
|
constexpr |
Retrieve's a transactions transaction mode.
The mode can either be an instance of one of the child types of ozo::transaction_mode or ozo::none if mode was set explicitly set.
transaction | transaction to get the transaction mode from |
References ozo::get_option(), ozo::transaction_options::mode, ozo::none, and ozo::transaction< Connection, Options >::options().
decltype(auto) ozo::rollback | ( | ConnectionProvider && | provider, |
CompletionToken && | token | ||
) |
Commits a transaction.
This function is time constrain free shortcut to ozo::rollback()
function. Its call is equal to ozo::rollback(std::move(transaction), ozo::none, token)
call.
transaction | — open transaction to rollback. |
token | — operation CompletionToken . |
CompletionToken
. References ozo::none.
decltype(auto) ozo::rollback | ( | transaction< T, Options > && | transaction, |
TimeConstraint | t, | ||
CompletionToken && | token | ||
) |
Rollback a transaction.
The function rollback transaction on a database. The function can be called as any of Boost.Asio asynchronous function with CompletionToken. The operation would be cancelled if time constrain is reached while performing.
transaction | — open transaction to rollback. |
time_constraint | — operation TimeConstraint . |
token | — operation CompletionToken . |
CompletionToken
.For full example see examples/transaction.cpp.
Committing a transaction: