Zero  0.1.0
Classes | Macros | Functions | Variables
xct.h File Reference
#include "w_defines.h"
#include <chrono>
#include <set>
#include <atomic>
#include "AtomicCounter.hpp"
#include "w_key.h"
#include "lsn.h"
#include "allocator.h"
#include "latch.h"

Go to the source code of this file.

Classes

class  inquery_verify_context_t
 
class  xct_t
 A transaction. Internal to the storage manager.This class may be used in a limited way for the handling of out-of-log-space conditions. More...
 
class  xct_i
 Iterator over transaction list. More...
 
class  sys_xct_section_t
 Used to automatically begin/commit/abort a system transaction. More...
 
class  no_lock_section_t
 

Macros

#define X_LOG_COMMENT_ON   0
 
#define ADD_LOG_COMMENT_SIG
 
#define ADD_LOG_COMMENT_USE
 
#define X_LOG_COMMENT_USE(x)
 
#define X_DO(x, anchor)
 

Functions

bool g_xct_does_need_lock ()
 
bool g_xct_does_ex_lock_for_select ()
 

Variables

const int ELR_READONLY_WAIT_MAX_COUNT = 10
 
const int ELR_READONLY_WAIT_USEC = 2000
 

Macro Definition Documentation

§ ADD_LOG_COMMENT_SIG

#define ADD_LOG_COMMENT_SIG

§ ADD_LOG_COMMENT_USE

#define ADD_LOG_COMMENT_USE

§ X_DO

#define X_DO (   x,
  anchor 
)
Value:
{ \
w_rc_t __e = (x); \
if (__e.is_error()) { \
w_assert3(xct()); \
W_COERCE(xct()->rollback(anchor)); \
xct()->release_anchor(true X_LOG_COMMENT_USE("X_DO")); \
return RC_AUGMENT(__e); \
} \
}
#define RC_AUGMENT(rc)
Augment stack trace. Add stack trace information (file, line) to a return code. This is the normal wa...
Definition: w_rc.h:264
xct_t * xct()
Definition: smthread.h:575
#define X_LOG_COMMENT_USE(x)
Definition: xct.h:79

skip

§ X_LOG_COMMENT_ON

#define X_LOG_COMMENT_ON   0

§ X_LOG_COMMENT_USE

#define X_LOG_COMMENT_USE (   x)

Function Documentation

§ g_xct_does_ex_lock_for_select()

bool g_xct_does_ex_lock_for_select ( )
inline

§ g_xct_does_need_lock()

bool g_xct_does_need_lock ( )
inline

skip

Variable Documentation

§ ELR_READONLY_WAIT_MAX_COUNT

const int ELR_READONLY_WAIT_MAX_COUNT = 10

§ ELR_READONLY_WAIT_USEC

const int ELR_READONLY_WAIT_USEC = 2000