userver: storages::mongo::TransactionException Class Reference
Loading...
Searching...
No Matches
storages::mongo::TransactionException Class Reference

#include <userver/storages/mongo/exception.hpp>

Detailed Description

Transaction-related exception.

Definition at line 51 of file exception.hpp.

+ Inheritance diagram for storages::mongo::TransactionException:

Public Types

enum class  Type {
  kTransientError ,
  kPermanentError
}
 
enum class  TraceMode {
  kAlways ,
  kIfLoggingIsEnabled
}
 
using MemoryBuffer = fmt::basic_memory_buffer< char, kInlineBufferSize >
 

Public Member Functions

 TransactionException (Type type, std::string_view what)
 
Type GetType () const noexcept
 
const char * what () const noexcept override
 
 TracefulExceptionBase ()
 
 TracefulExceptionBase (std::string_view what)
 
 TracefulExceptionBase (TraceMode trace_mode)
 
 TracefulExceptionBase (TracefulExceptionBase &&) noexcept
 
const MemoryBuffer & MessageBuffer () const noexcept
 
const boost::stacktrace::basic_stacktrace & Trace () const noexcept
 

Static Public Attributes

static constexpr size_t kInlineBufferSize = 100
 

Member Typedef Documentation

◆ MemoryBuffer

using utils::TracefulExceptionBase::MemoryBuffer = fmt::basic_memory_buffer<char, kInlineBufferSize>
inherited

Definition at line 31 of file traceful_exception.hpp.

Member Enumeration Documentation

◆ TraceMode

enum class utils::TracefulExceptionBase::TraceMode
stronginherited

Definition at line 25 of file traceful_exception.hpp.

◆ Type

Enumerator
kTransientError 

Transient error that may be retried.

kPermanentError 

Permanent error, cannot retry.

Definition at line 53 of file exception.hpp.

Member Function Documentation

◆ GetType()

Type storages::mongo::TransactionException::GetType ( ) const
inlinenoexcept

Definition at line 60 of file exception.hpp.

Member Data Documentation

◆ kInlineBufferSize

constexpr size_t utils::TracefulExceptionBase::kInlineBufferSize = 100
staticconstexprinherited

Definition at line 30 of file traceful_exception.hpp.


The documentation for this class was generated from the following file: