Atlas Runtime
Atlas::CSMgr Class Reference

#include <consistency_mgr.hpp>

Public Types

typedef std::map< DGraph::VDesc, bool > MapNodes
 

Public Member Functions

void doConsistentUpdate (LogStructure *, Helper::LogVersions *, bool is_in_recovery)
 Main entry point for a single round of consistent state gen. More...
 
void set_existing_rel_map (Helper::MapLog2Int *m)
 
boost::graph_traits< DGraph::DirectedGraph >::vertices_size_type get_num_graph_vertices () const
 
void set_is_stable (DGraph::VDesc vertex, bool b)
 
bool is_stable (DGraph::VDesc vertex) const
 

Static Public Member Functions

static CSMgrcreateInstance ()
 
static void deleteInstance ()
 
static CSMgrgetInstance ()
 

Member Typedef Documentation

typedef std::map<DGraph::VDesc, bool> Atlas::CSMgr::MapNodes

Member Function Documentation

static CSMgr& Atlas::CSMgr::createInstance ( )
inlinestatic
static void Atlas::CSMgr::deleteInstance ( )
inlinestatic
void Atlas::CSMgr::doConsistentUpdate ( LogStructure lsp,
Helper::LogVersions log_v,
bool  is_in_recovery 
)

Main entry point for a single round of consistent state gen.

Parameters
lspPointer to the first thread specific header
log_vPointer to the versions of consistent states
is_in_recoveryWhether invoked online or during recovery

Build a graph of completed failure atomic sections (FASE) with durability edges among them. All log entries of a FASE are in a consistent state if all log entries they transitively happen-after are also in the same consistent state. Failure-atomically removing these log entries advances the persistent consistent state.

boost::graph_traits<DGraph::DirectedGraph>::vertices_size_type Atlas::CSMgr::get_num_graph_vertices ( ) const
inline
static CSMgr& Atlas::CSMgr::getInstance ( )
inlinestatic
bool Atlas::CSMgr::is_stable ( DGraph::VDesc  vertex) const
inline
void Atlas::CSMgr::set_existing_rel_map ( Helper::MapLog2Int m)
inline
void Atlas::CSMgr::set_is_stable ( DGraph::VDesc  vertex,
bool  b 
)
inline

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