![]() |
MySQL 8.0.43
Source Code Documentation
|
Transaction system global type definitions. More...
#include "page0size.h"#include "sync0rw.h"#include "ut0byte.h"#include "ut0mutex.h"#include "ut0new.h"#include <atomic>#include <queue>#include <set>#include <vector>Go to the source code of this file.
Classes | |
| struct | trx_savept_t |
| Transaction savepoint. More... | |
| struct | trx_guid_t |
| Used to identify trx uniquely over time. More... | |
| struct | trx_rseg_t |
| The rollback segment memory object. More... | |
| class | Rsegs |
| This is a wrapper for a std::vector of trx_rseg_t object pointers. More... | |
| class | TrxUndoRsegs |
| Rollback segments from a given transaction with trx-no scheduled for purge. More... | |
| struct | TrxVersion |
Macros | |
| #define | TRX_ID_FMT IB_ID_FMT |
| printf(3) format used for printing DB_TRX_ID and other system fields More... | |
Typedefs | |
| typedef ib_id_t | row_id_t |
| Row identifier (DB_ROW_ID, DATA_ROW_ID) More... | |
| typedef ib_id_t | trx_id_t |
| Transaction identifier (DB_TRX_ID, DATA_TRX_ID) More... | |
| typedef ib_id_t | roll_ptr_t |
| Rollback pointer (DB_ROLL_PTR, DATA_ROLL_PTR) More... | |
| typedef ib_id_t | undo_no_t |
| Undo number. More... | |
| typedef ib_mutex_t | RsegMutex |
| typedef ib_mutex_t | TrxMutex |
| typedef ib_mutex_t | UndoMutex |
| typedef ib_mutex_t | PQMutex |
| typedef ib_mutex_t | TrxSysMutex |
| using | Rsegs_Vector = std::vector< trx_rseg_t *, ut::allocator< trx_rseg_t * > > |
| using | Rseg_Iterator = Rsegs_Vector::iterator |
| template<size_t N> | |
| using | Rsegs_array = std::array< trx_rseg_t *, N > |
| typedef std::priority_queue< TrxUndoRsegs, std::vector< TrxUndoRsegs, ut::allocator< TrxUndoRsegs > >, TrxUndoRsegs > | purge_pq_t |
| typedef std::vector< trx_id_t, ut::allocator< trx_id_t > > | trx_ids_t |
| typedef std::vector< TrxVersion, ut::allocator< TrxVersion > > | hit_list_t |
| typedef byte | trx_sysf_t |
| File objects. More... | |
| typedef byte | trx_rsegsf_t |
| Rollback segment array header. More... | |
| typedef byte | trx_rsegf_t |
| Rollback segment header. More... | |
| typedef byte | trx_usegf_t |
| Undo segment header. More... | |
| typedef byte | trx_ulogf_t |
| Undo log header. More... | |
| typedef byte | trx_upagef_t |
| Undo log page header. More... | |
| typedef byte | trx_undo_rec_t |
| Undo log record. More... | |
Enumerations | |
| enum | trx_que_t { TRX_QUE_RUNNING , TRX_QUE_LOCK_WAIT , TRX_QUE_ROLLING_BACK , TRX_QUE_COMMITTING } |
| Transaction execution states when trx->state == TRX_STATE_ACTIVE. More... | |
| enum | trx_state_t { TRX_STATE_NOT_STARTED , TRX_STATE_FORCED_ROLLBACK , TRX_STATE_ACTIVE , TRX_STATE_PREPARED , TRX_STATE_COMMITTED_IN_MEMORY } |
| Transaction states (trx_t::state) More... | |
| enum | trx_dict_op_t { TRX_DICT_OP_NONE = 0 , TRX_DICT_OP_TABLE = 1 , TRX_DICT_OP_INDEX = 2 } |
| Type of data dictionary operation. More... | |
Functions | |
| std::ostream & | operator<< (std::ostream &out, const trx_rseg_t &rseg) |
Variables | |
| static const space_id_t | TRX_SYS_SPACE = 0 |
| Space id of the transaction system page (the system tablespace) More... | |
| constexpr uint32_t | TRX_SYS_PAGE_NO = FSP_TRX_SYS_PAGE_NO |
| Page number of the transaction system page. More... | |
| static const ulint | TRX_MAGIC_N = 91118598 |
| Random value to check for corruption of trx_t. More... | |
| static const uint32_t | TRX_FORCE_ROLLBACK_DISABLE = 1 << 29 |
| If this flag is set then the transaction cannot be rolled back asynchronously. More... | |
| static const uint32_t | TRX_FORCE_ROLLBACK = 1U << 31 |
| Mark the transaction for forced rollback. More... | |
| static const uint32_t | TRX_FORCE_ROLLBACK_MASK = 0x1FFFFFFF |
| For masking out the above flags. More... | |
| constexpr trx_id_t | TRX_ID_MAX = IB_ID_MAX |
| Maximum transaction identifier. More... | |
Transaction system global type definitions.
Created 3/26/1996 Heikki Tuuri
| #define TRX_ID_FMT IB_ID_FMT |
printf(3) format used for printing DB_TRX_ID and other system fields
| typedef std::vector<TrxVersion, ut::allocator<TrxVersion> > hit_list_t |
| typedef ib_mutex_t PQMutex |
| typedef std::priority_queue< TrxUndoRsegs, std::vector<TrxUndoRsegs, ut::allocator<TrxUndoRsegs> >, TrxUndoRsegs> purge_pq_t |
| typedef ib_id_t roll_ptr_t |
Rollback pointer (DB_ROLL_PTR, DATA_ROLL_PTR)
| using Rseg_Iterator = Rsegs_Vector::iterator |
| typedef ib_mutex_t RsegMutex |
| using Rsegs_array = std::array<trx_rseg_t *, N> |
| using Rsegs_Vector = std::vector<trx_rseg_t *, ut::allocator<trx_rseg_t *> > |
| typedef std::vector<trx_id_t, ut::allocator<trx_id_t> > trx_ids_t |
| typedef byte trx_rsegf_t |
Rollback segment header.
| typedef byte trx_rsegsf_t |
Rollback segment array header.
| typedef byte trx_sysf_t |
File objects.
Transaction system header
| typedef byte trx_ulogf_t |
Undo log header.
| typedef byte trx_undo_rec_t |
Undo log record.
| typedef byte trx_upagef_t |
Undo log page header.
| typedef byte trx_usegf_t |
Undo segment header.
| typedef ib_mutex_t TrxMutex |
| typedef ib_mutex_t TrxSysMutex |
| typedef ib_mutex_t UndoMutex |
| enum trx_dict_op_t |
Type of data dictionary operation.
| enum trx_que_t |
| enum trx_state_t |
|
inline |
|
static |
Mark the transaction for forced rollback.
|
static |
If this flag is set then the transaction cannot be rolled back asynchronously.
|
static |
For masking out the above flags.
|
static |
Random value to check for corruption of trx_t.
|
constexpr |
Page number of the transaction system page.
|
static |
Space id of the transaction system page (the system tablespace)