libfoedus-core
FOEDUS Core Library
foedus::log::LogManagerControlBlock Struct Reference

Shared data in LogManagerPimpl. More...

Detailed Description

Shared data in LogManagerPimpl.

Definition at line 42 of file log_manager_pimpl.hpp.

#include <log_manager_pimpl.hpp>

Collaboration diagram for foedus::log::LogManagerControlBlock:

Public Member Functions

 LogManagerControlBlock ()=delete
 
 ~LogManagerControlBlock ()=delete
 
void initialize ()
 
void uninitialize ()
 

Public Attributes

std::atomic< Epoch::EpochIntegerdurable_global_epoch_
 The durable epoch of the entire engine. More...
 
soc::SharedPolling durable_global_epoch_advanced_
 Fired (broadcast) whenever durable_global_epoch_ is advanced. More...
 
soc::SharedMutex durable_global_epoch_savepoint_mutex_
 To-be-removed Serializes the thread to take savepoint to advance durable_global_epoch_. More...
 

Constructor & Destructor Documentation

foedus::log::LogManagerControlBlock::LogManagerControlBlock ( )
delete
foedus::log::LogManagerControlBlock::~LogManagerControlBlock ( )
delete

Member Function Documentation

void foedus::log::LogManagerControlBlock::initialize ( )
inline

Definition at line 47 of file log_manager_pimpl.hpp.

References durable_global_epoch_advanced_, durable_global_epoch_savepoint_mutex_, foedus::soc::SharedMutex::initialize(), and foedus::soc::SharedPolling::initialize().

Referenced by foedus::log::LogManagerPimpl::initialize_once().

47  {
50  }
soc::SharedPolling durable_global_epoch_advanced_
Fired (broadcast) whenever durable_global_epoch_ is advanced.
void initialize(bool recursive=false)
soc::SharedMutex durable_global_epoch_savepoint_mutex_
To-be-removed Serializes the thread to take savepoint to advance durable_global_epoch_.

Here is the call graph for this function:

Here is the caller graph for this function:

void foedus::log::LogManagerControlBlock::uninitialize ( )
inline

Definition at line 51 of file log_manager_pimpl.hpp.

References durable_global_epoch_savepoint_mutex_, and foedus::soc::SharedMutex::uninitialize().

Referenced by foedus::log::LogManagerPimpl::uninitialize_once().

51  {
53  }
soc::SharedMutex durable_global_epoch_savepoint_mutex_
To-be-removed Serializes the thread to take savepoint to advance durable_global_epoch_.

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

std::atomic<Epoch::EpochInteger> foedus::log::LogManagerControlBlock::durable_global_epoch_

The durable epoch of the entire engine.

Invariant
current_global_epoch_ > durable_global_epoch_ (we need to advance current epoch to make sure the ex-current epoch is durable)

This value indicates upto what commit-groups we can return results to client programs. This value is advanced by checking the durable epoch of each logger.

Definition at line 63 of file log_manager_pimpl.hpp.

Referenced by foedus::log::LogManagerPimpl::announce_new_durable_global_epoch(), foedus::log::LogManagerPimpl::get_durable_global_epoch(), foedus::log::LogManagerPimpl::get_durable_global_epoch_weak(), foedus::log::LogManagerPimpl::initialize_once(), and foedus::log::LogManagerPimpl::refresh_global_durable_epoch().

soc::SharedPolling foedus::log::LogManagerControlBlock::durable_global_epoch_advanced_
soc::SharedMutex foedus::log::LogManagerControlBlock::durable_global_epoch_savepoint_mutex_

To-be-removed Serializes the thread to take savepoint to advance durable_global_epoch_.

Definition at line 69 of file log_manager_pimpl.hpp.

Referenced by initialize(), foedus::log::LogManagerPimpl::refresh_global_durable_epoch(), and uninitialize().


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