MySQL 8.0.40
Source Code Documentation
Arch_Group::Recovery Class Reference

Recovery system data structure for the archiver. More...

#include <arch0recv.h>

Public Member Functions

 Recovery (Arch_Group *group)
 Constructor. More...
 
 ~Recovery ()
 Destructor. More...
 
dberr_t replace_pages_from_dblwr (Arch_Dblwr_Ctx *dblwr_ctx)
 Check and replace blocks in archived files belonging to a group from the doublewrite buffer if required. More...
 
dberr_t cleanup_if_required (Arch_Recv_Group_Info &info)
 Delete the last file if there are no blocks flushed to it. More...
 
dberr_t parse (Arch_Recv_Group_Info &info)
 Start parsing the archive file for archive group information. More...
 
void attach ()
 Attach system client to the archiver during recovery if any group was active at the time of crash. More...
 
 Recovery (Recovery const &)=delete
 Disable copy construction. More...
 
Recoveryoperator= (Recovery const &)=delete
 Disable assignment. More...
 

Private Attributes

Arch_Groupm_group {nullptr}
 The parent class group object. More...
 

Detailed Description

Recovery system data structure for the archiver.

Constructor & Destructor Documentation

◆ Recovery() [1/2]

Arch_Group::Recovery::Recovery ( Arch_Group group)
inline

Constructor.

Parameters
[in]groupthe parent class group object

◆ ~Recovery()

Arch_Group::Recovery::~Recovery ( )
inline

Destructor.

◆ Recovery() [2/2]

Arch_Group::Recovery::Recovery ( Recovery const &  )
delete

Disable copy construction.

Member Function Documentation

◆ attach()

void Arch_Group::Recovery::attach ( )
inline

Attach system client to the archiver during recovery if any group was active at the time of crash.

◆ cleanup_if_required()

dberr_t Arch_Group::Recovery::cleanup_if_required ( Arch_Recv_Group_Info info)

Delete the last file if there are no blocks flushed to it.

Parameters
[in,out]infoinformation related to group required for recovery
Returns
error code.

◆ operator=()

Recovery & Arch_Group::Recovery::operator= ( Recovery const &  )
delete

Disable assignment.

◆ parse()

dberr_t Arch_Group::Recovery::parse ( Arch_Recv_Group_Info info)

Start parsing the archive file for archive group information.

Parameters
[in,out]infoinformation related to group required for recovery
Returns
error code

◆ replace_pages_from_dblwr()

dberr_t Arch_Group::Recovery::replace_pages_from_dblwr ( Arch_Dblwr_Ctx dblwr_ctx)

Check and replace blocks in archived files belonging to a group from the doublewrite buffer if required.

Parameters
[in]dblwr_ctxDoublewrite context which has the doublewrite buffer blocks
Returns
error code

Member Data Documentation

◆ m_group

Arch_Group* Arch_Group::Recovery::m_group {nullptr}
private

The parent class group object.


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