MySQL 8.0.31
Source Code Documentation
log0files_capacity.h File Reference

Redo log management of capacity. More...

#include "log0files_dict.h"
#include "log0types.h"
#include "os0file.h"

Go to the source code of this file.

Classes

class  Log_files_capacity
 Responsible for the redo log capacity computations. More...
 
struct  Log_files_capacity::Exposed
 

Functions

void log_files_capacity_get_limits (const log_t &log, lsn_t &limit_for_free_check, lsn_t &limit_for_dirty_page_age)
 Retrieves limitations determined by the current state of log.m_capacity. More...
 

Detailed Description

Redo log management of capacity.

Function Documentation

◆ log_files_capacity_get_limits()

void log_files_capacity_get_limits ( const log_t log,
lsn_t limit_for_free_check,
lsn_t limit_for_dirty_page_age 
)

Retrieves limitations determined by the current state of log.m_capacity.

These values are retrieved atomically (are consistent with each other).

Parameters
[in]logredo log
[out]limit_for_free_checksoft capacity of the redo decreased by the current free check margin; this is limit for size of redo until which the log_free_check calls do not force waits
[out]limit_for_dirty_page_agelimit for the oldest dirty page until which the async (adaptive) flushing is not forced to be started (it might be started if turned on explicitly by the innodb_adaptive_flushing); note that computation of this value include doing the subtraction of the current log free check margin