MySQL 8.4.0
Source Code Documentation
THD::Attachable_trx_rw Class Reference

A derived from THD::Attachable_trx class allows updates in the attachable transaction. More...

Inheritance diagram for THD::Attachable_trx_rw:

Public Member Functions

bool is_read_only () const override
 Attachable_trx_rw (THD *thd)
- Public Member Functions inherited from THD::Attachable_trx
 Attachable_trx (THD *thd, Attachable_trx *prev_trx)
virtual ~Attachable_trx ()
Attachable_trxget_prev_attachable_trx () const

Private Member Functions

 Attachable_trx_rw (const Attachable_trx_rw &)
Attachable_trx_rwoperator= (const Attachable_trx_rw &)

Additional Inherited Members

- Protected Attributes inherited from THD::Attachable_trx
 THD instance. More...
enum_reset_lex m_reset_lex
 Attachable_trx which was active for the THD before when this transaction was started (NULL in most cases). More...
Transaction_state m_trx_state
 Transaction state data. More...

Detailed Description

A derived from THD::Attachable_trx class allows updates in the attachable transaction.

Callers of the class methods must make sure the attachable_rw won't cause deadlock with the main transaction. The destructor does not invoke ha_commit_{stmt,trans} nor ha_rollback_trans on purpose. Burden to terminate the read-write instance also lies on the caller! In order to use this interface it MUST prove that no side effect to the global transaction state can be inflicted by a chosen method.

This class is being used only by class Gtid_table_access_context by replication and by dd::info_schema::Table_statistics.

Constructor & Destructor Documentation

◆ Attachable_trx_rw() [1/2]

THD::Attachable_trx_rw::Attachable_trx_rw ( THD thd)

◆ Attachable_trx_rw() [2/2]

THD::Attachable_trx_rw::Attachable_trx_rw ( const Attachable_trx_rw )

Member Function Documentation

◆ is_read_only()

bool THD::Attachable_trx_rw::is_read_only ( ) const

Reimplemented from THD::Attachable_trx.

◆ operator=()

Attachable_trx_rw & THD::Attachable_trx_rw::operator= ( const Attachable_trx_rw )

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