MySQL 26.7.0
Source Code Documentation
ib::redo::Handler_interface::Capacity_estimate Struct Reference

Describes the state of the capacity in sufficient detail that InnoDB knows if it should rush with page cleaning and checkpointing. More...

#include <log0handler_interface.h>

Public Member Functions

Lsn soft_logical_capacity () const
 The so called Soft Logical Capacity, which is the lower bound on the length of the lsn range this Handler can provide to the InnoDB, including the margin needed for wait_for_space(). More...
 

Public Attributes

Lsn max_history_length
 The estimated lower bound on the maximum difference between peek_first_unassigned_lsn() and oldest still not removed lsn, which the Handler could keep. More...
 
Lsn margin_length
 The length of the lsn range reserved by wait_for_space(). More...
 

Detailed Description

Describes the state of the capacity in sufficient detail that InnoDB knows if it should rush with page cleaning and checkpointing.

It depicts a hypothetical state at the border between has_space() returning true and false, by providing how much of the redo log history could be retained in this state, and how much of space is reserved for the margin needed by wait_for_space().

Member Function Documentation

◆ soft_logical_capacity()

Lsn ib::redo::Handler_interface::Capacity_estimate::soft_logical_capacity ( ) const
inline

The so called Soft Logical Capacity, which is the lower bound on the length of the lsn range this Handler can provide to the InnoDB, including the margin needed for wait_for_space().

"Soft" is in contrast to "Hard" limit which might be a little larger, but not exposed to InnoDB, and is the real limit which can't be exceeded for technical reasons, even if the contract of reconfigure(..) and wait_for_space(..) is not followed by InnoDB. "Logical" is in contrast to "Physical" which is the actual number of bytes taken on disc by the data structures.

Always equal to max_history_length + margin_length.

Member Data Documentation

◆ margin_length

Lsn ib::redo::Handler_interface::Capacity_estimate::margin_length

The length of the lsn range reserved by wait_for_space().

◆ max_history_length

Lsn ib::redo::Handler_interface::Capacity_estimate::max_history_length

The estimated lower bound on the maximum difference between peek_first_unassigned_lsn() and oldest still not removed lsn, which the Handler could keep.


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