MySQL  8.0.17
Source Code Documentation
Ha_data Struct Reference

Storage engine specific thread local data. More...

#include <sql_class.h>

Public Member Functions

 Ha_data ()
 

Public Attributes

void * ha_ptr
 Storage engine specific thread local data. More...
 
void * ha_ptr_backup
 A memorizer to engine specific "native" transaction object to provide storage engine detach-re-attach facility. More...
 
Ha_trx_info ha_info [2]
 0: Life time: one statement within a transaction. More...
 
plugin_ref lock
 NULL: engine is not bound to this thread non-NULL: engine is bound to this thread, engine shutdown forbidden. More...
 

Detailed Description

Storage engine specific thread local data.

Constructor & Destructor Documentation

◆ Ha_data()

Ha_data::Ha_data ( )
inline

Member Data Documentation

◆ ha_info

Ha_trx_info Ha_data::ha_info[2]

0: Life time: one statement within a transaction.

If @autocommit is on, also represents the entire transaction.

See also
trans_register_ha()

1: Life time: one transaction within a connection. If the storage engine does not participate in a transaction, this should not be used.

See also
trans_register_ha()

◆ ha_ptr

void* Ha_data::ha_ptr

Storage engine specific thread local data.

Lifetime: one user connection.

◆ ha_ptr_backup

void* Ha_data::ha_ptr_backup

A memorizer to engine specific "native" transaction object to provide storage engine detach-re-attach facility.

The server level transaction object can dissociate from storage engine transactions. The released "native" transaction reference can be hold in the member until it is reconciled later. Lifetime: Depends on caller of hton::replace_native_transaction_in_thd. For instance in the case of slave server applier handling XA transaction it is from XA START to XA PREPARE.

◆ lock

plugin_ref Ha_data::lock

NULL: engine is not bound to this thread non-NULL: engine is bound to this thread, engine shutdown forbidden.


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