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

Public 成员函数

RC init () override
 
const vector< FieldMeta > * trx_fields () const override
 
Trxcreate_trx (LogHandler &log_handler) override
 
Trxcreate_trx (LogHandler &log_handler, int32_t trx_id) override
 创建一个事务,日志回放时使用 更多...
 
void destroy_trx (Trx *trx) override
 
Trxfind_trx (int32_t trx_id) override
 找到对应事务号的事务 更多...
 
void all_trxes (vector< Trx * > &trxes) override
 
LogReplayercreate_log_replayer (Db &db, LogHandler &log_handler) override
 
int32_t next_trx_id ()
 
int32_t max_trx_id () const
 
virtual RC init ()=0
 
virtual const vector< FieldMeta > * trx_fields () const =0
 
virtual Trxcreate_trx (LogHandler &log_handler)=0
 
virtual Trxcreate_trx (LogHandler &log_handler, int32_t trx_id)=0
 创建一个事务,日志回放时使用 更多...
 
virtual Trxfind_trx (int32_t trx_id)=0
 
virtual void all_trxes (vector< Trx * > &trxes)=0
 
virtual void destroy_trx (Trx *trx)=0
 
virtual LogReplayercreate_log_replayer (Db &db, LogHandler &log_handler)=0
 

Private 属性

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

额外继承的成员函数

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

成员函数说明

◆ all_trxes()

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

实现了 TrxKit.

◆ create_log_replayer()

LogReplayer * MvccTrxKit::create_log_replayer ( Db db,
LogHandler log_handler 
)
overridevirtual

实现了 TrxKit.

◆ create_trx() [1/2]

Trx * MvccTrxKit::create_trx ( LogHandler log_handler)
overridevirtual

实现了 TrxKit.

◆ create_trx() [2/2]

Trx * MvccTrxKit::create_trx ( LogHandler log_handler,
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.


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