Skip to content

Class log_postpone_cache

ClassList > log_postpone_cache

More...

  • #include <log_postpone_cache.hpp>

Public Functions

Type Name
void add_lsa (const log_lsa & lsa)
void add_redo_data (const log_prior_node & node)
void copy_to (log_postpone_cache & dest) const
bool do_postpone (cubthread::entry & thread_ref, const log_lsa & start_postpone_lsa)
log_postpone_cache ()
log_postpone_cache (log_postpone_cache && other) = delete
log_postpone_cache (const log_postpone_cache & other) = delete
log_postpone_cache & operator= (log_postpone_cache && other) = delete
log_postpone_cache & operator= (const log_postpone_cache & other) = delete
void reset ()
void reset_from (std::size_t cursor)
~log_postpone_cache () = default

Detailed Description

Caches postpones to avoid reading them from log after commit top operation with postpone. Otherwise, log critical section may be required which will slow the access on merged index nodes

Public Functions Documentation

function add_lsa

void log_postpone_cache::add_lsa (
    const  log_lsa & lsa
) 

Save LSA of postpone operations

Parameters:

  • lsa - log postpone LSA

Returns:

void

NOTE: This saves LSA after a new entry and its redo data have already been added. They couldn't both be added in the same step.


function add_redo_data

void log_postpone_cache::add_redo_data (
    const  log_prior_node & node
) 

Cache redo data for log postpone

Parameters:

  • node - log prior node

Returns:

void


function copy_to

void log_postpone_cache::copy_to (
    log_postpone_cache & dest
) const

function do_postpone

bool log_postpone_cache::do_postpone (
    cubthread::entry & thread_ref,
    const  log_lsa & start_postpone_lsa
) 

Do postpone from cached postpone entries.

Parameters:

  • thread_ref - thread entry
  • start_postpone_lsa - start postpone LSA

Returns:

  • true if postpone was run from cached entries, false otherwise

function log_postpone_cache [1/3]

inline log_postpone_cache::log_postpone_cache () 

function log_postpone_cache [2/3]

log_postpone_cache::log_postpone_cache (
    log_postpone_cache && other
) = delete

function log_postpone_cache [3/3]

log_postpone_cache::log_postpone_cache (
    const  log_postpone_cache & other
) = delete

function operator=

log_postpone_cache & log_postpone_cache::operator= (
    log_postpone_cache && other
) = delete

function operator=

log_postpone_cache & log_postpone_cache::operator= (
    const  log_postpone_cache & other
) = delete

function reset

void log_postpone_cache::reset () 

function reset_from

void log_postpone_cache::reset_from (
    std::size_t cursor
) 

function ~log_postpone_cache

log_postpone_cache::~log_postpone_cache () = default


The documentation for this class was generated from the following file cubrid/src/transaction/log_postpone_cache.hpp