MySQL 9.0.0
Source Code Documentation
injector::transaction Class Reference

#include <rpl_injector.h>

Classes

class  binlog_pos
 
class  table
 

Public Types

typedef ucharrecord_type
 
typedef uint32 server_id_type
 

Public Member Functions

 transaction (THD *thd, bool calc_writeset_hash)
 
 transaction (const transaction &)=delete
 
 transaction (const transaction &&)=delete
 
transactionoperator= (const transaction &)=delete
 
transactionoperator= (const transaction &&)=delete
 
 ~transaction ()
 
int use_table (server_id_type sid, table tbl)
 
int write_row (server_id_type sid, table tbl, MY_BITMAP const *cols, record_type record, const unsigned char *extra_row_info)
 
int delete_row (server_id_type sid, table tbl, MY_BITMAP const *cols, record_type record, const unsigned char *extra_row_info)
 
int update_row (server_id_type sid, table tbl, MY_BITMAP const *before_cols, MY_BITMAP const *after_cols, record_type before, record_type after, const unsigned char *extra_row_info)
 
int commit ()
 
int rollback ()
 
binlog_pos start_pos () const
 
binlog_pos next_pos () const
 

Private Types

enum  enum_state { START_STATE , TABLE_STATE , ROW_STATE , STATE_COUNT }
 

Private Member Functions

int check_state (enum_state const target_state)
 

Private Attributes

enum injector::transaction::enum_state m_state
 
char m_start_name_buf [FN_REFLEN]
 
char m_end_name_buf [FN_REFLEN]
 
binlog_pos m_start_pos
 
binlog_pos m_next_pos
 
THD *const m_thd
 
const bool m_calc_writeset_hash {false}
 

Member Typedef Documentation

◆ record_type

◆ server_id_type

Member Enumeration Documentation

◆ enum_state

Enumerator
START_STATE 
TABLE_STATE 
ROW_STATE 
STATE_COUNT 

Constructor & Destructor Documentation

◆ transaction() [1/3]

injector::transaction::transaction ( THD thd,
bool  calc_writeset_hash 
)

◆ transaction() [2/3]

injector::transaction::transaction ( const transaction )
delete

◆ transaction() [3/3]

injector::transaction::transaction ( const transaction &&  )
delete

◆ ~transaction()

injector::transaction::~transaction ( )
inline

Member Function Documentation

◆ check_state()

int injector::transaction::check_state ( enum_state const  target_state)
inlineprivate

◆ commit()

int injector::transaction::commit ( )
Return values
0transaction committed
1transaction rolled back

◆ delete_row()

int injector::transaction::delete_row ( server_id_type  sid,
table  tbl,
MY_BITMAP const *  cols,
record_type  record,
const unsigned char *  extra_row_info 
)

◆ next_pos()

injector::transaction::binlog_pos injector::transaction::next_pos ( ) const

◆ operator=() [1/2]

transaction & injector::transaction::operator= ( const transaction &&  )
delete

◆ operator=() [2/2]

transaction & injector::transaction::operator= ( const transaction )
delete

◆ rollback()

int injector::transaction::rollback ( )

◆ start_pos()

injector::transaction::binlog_pos injector::transaction::start_pos ( ) const

◆ update_row()

int injector::transaction::update_row ( server_id_type  sid,
table  tbl,
MY_BITMAP const *  before_cols,
MY_BITMAP const *  after_cols,
record_type  before,
record_type  after,
const unsigned char *  extra_row_info 
)

◆ use_table()

int injector::transaction::use_table ( server_id_type  sid,
table  tbl 
)

◆ write_row()

int injector::transaction::write_row ( server_id_type  sid,
table  tbl,
MY_BITMAP const *  cols,
record_type  record,
const unsigned char *  extra_row_info 
)

Member Data Documentation

◆ m_calc_writeset_hash

const bool injector::transaction::m_calc_writeset_hash {false}
private

◆ m_end_name_buf

char injector::transaction::m_end_name_buf[FN_REFLEN]
private

◆ m_next_pos

binlog_pos injector::transaction::m_next_pos
private

◆ m_start_name_buf

char injector::transaction::m_start_name_buf[FN_REFLEN]
private

◆ m_start_pos

binlog_pos injector::transaction::m_start_pos
private

◆ m_state

enum injector::transaction::enum_state injector::transaction::m_state
private

◆ m_thd

THD* const injector::transaction::m_thd
private

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