MiniOB 1
MiniOB is one mini database, helping developers to learn how database works.
载入中...
搜索中...
未找到
Public 成员函数 | Private 属性 | 所有成员列表
MvccTrxKit类 参考
类 MvccTrxKit 继承关系图:
TrxKit

Public 成员函数

RC init () override
 
const std::vector< FieldMeta > * trx_fields () const override
 
Trxcreate_trx (CLogManager *log_manager) override
 
Trxcreate_trx (int32_t trx_id) override
 
void destroy_trx (Trx *trx) override
 
Trxfind_trx (int32_t trx_id) override
 找到对应事务号的事务 更多...
 
void all_trxes (std::vector< Trx * > &trxes) override
 
int32_t next_trx_id ()
 
int32_t max_trx_id () const
 
virtual RC init ()=0
 
virtual const std::vector< FieldMeta > * trx_fields () const =0
 
virtual Trxcreate_trx (CLogManager *log_manager)=0
 
virtual Trxcreate_trx (int32_t trx_id)=0
 
virtual Trxfind_trx (int32_t trx_id)=0
 
virtual void all_trxes (std::vector< Trx * > &trxes)=0
 
virtual void destroy_trx (Trx *trx)=0
 

Private 属性

std::vector< FieldMetafields_
 
std::atomic< int32_t > current_trx_id_ {0}
 
common::Mutex lock_
 
std::vector< Trx * > trxes_
 

额外继承的成员函数

- Public 类型 继承自 TrxKit
enum  Type { VACUOUS , MVCC }
 事务管理器的类型 更多...
 
- 静态 Public 成员函数 继承自 TrxKit
static TrxKitcreate (const char *name)
 
static RC init_global (const char *name)
 
static TrxKitinstance ()
 

成员函数说明

◆ all_trxes()

void MvccTrxKit::all_trxes ( std::vector< Trx * > &  trxes)
overridevirtual

实现了 TrxKit.

◆ create_trx() [1/2]

Trx * MvccTrxKit::create_trx ( CLogManager log_manager)
overridevirtual

实现了 TrxKit.

◆ create_trx() [2/2]

Trx * MvccTrxKit::create_trx ( int32_t  trx_id)
overridevirtual

实现了 TrxKit.

◆ destroy_trx()

void MvccTrxKit::destroy_trx ( Trx trx)
overridevirtual

实现了 TrxKit.

◆ find_trx()

Trx * MvccTrxKit::find_trx ( int32_t  trx_id)
overridevirtual

找到对应事务号的事务

当前仅在recover场景下使用

实现了 TrxKit.

◆ init()

RC MvccTrxKit::init ( )
overridevirtual

实现了 TrxKit.

◆ trx_fields()

const vector< FieldMeta > * MvccTrxKit::trx_fields ( ) const
overridevirtual

实现了 TrxKit.


该类的文档由以下文件生成: