MySQL 8.4.0
Source Code Documentation
dd::DD_kill_immunizer Class Reference

RAII class for immunizing the THD from kill operations. More...

#include <dd_kill_immunizer.h>

Public Member Functions

 DD_kill_immunizer (THD *thd)
 
 ~DD_kill_immunizer ()
 
bool is_active ()
 
void save_killed_state (THD::killed_state state)
 

Private Attributes

THDm_thd
 
THD::killed_state m_killed_state
 
DD_kill_immunizerm_saved_kill_immunizer
 
THD::killed_state m_saved_killed_state
 
bool m_is_active
 

Detailed Description

RAII class for immunizing the THD from kill operations.

Interruptions to operations on new Data Dictionary tables due to KILL QUERY, KILL CONNECTION or statement execution timeout would leave DD in inconsistent state. So the operations on the New Data Dictionary tables are made immune to these operations using DD_kill_immunizer.

Note: DD operations are made immune to KILL operations till WL#7743 and WL#7016 are implemented. So as part of these WL's DD_kill_immunizer should be removed.

Constructor & Destructor Documentation

◆ DD_kill_immunizer()

dd::DD_kill_immunizer::DD_kill_immunizer ( THD thd)
inline

◆ ~DD_kill_immunizer()

dd::DD_kill_immunizer::~DD_kill_immunizer ( )
inline

Member Function Documentation

◆ is_active()

bool dd::DD_kill_immunizer::is_active ( )
inline

◆ save_killed_state()

void dd::DD_kill_immunizer::save_killed_state ( THD::killed_state  state)
inline

Member Data Documentation

◆ m_is_active

bool dd::DD_kill_immunizer::m_is_active
private

◆ m_killed_state

THD::killed_state dd::DD_kill_immunizer::m_killed_state
private

◆ m_saved_kill_immunizer

DD_kill_immunizer* dd::DD_kill_immunizer::m_saved_kill_immunizer
private

◆ m_saved_killed_state

THD::killed_state dd::DD_kill_immunizer::m_saved_killed_state
private

◆ m_thd

THD* dd::DD_kill_immunizer::m_thd
private

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