MySQL  8.0.19
Source Code Documentation
Group_transaction_listener Class Referenceabstract

Listener for transaction life cycle events. More...

#include <group_transaction_observation_manager.h>

Inheritance diagram for Group_transaction_listener:
Primary_election_handler Server_ongoing_transactions_handler Transaction_consistency_manager

Public Types

enum  enum_transaction_origin { GROUP_APPLIER_TRANSACTION = 0, GROUP_RECOVERY_TRANSACTION = 1, GROUP_LOCAL_TRANSACTION = 2 }
 Enum for transaction origins. More...
 

Public Member Functions

virtual ~Group_transaction_listener ()
 Class destructor. More...
 
virtual int before_transaction_begin (my_thread_id thread_id, ulong gr_consistency_level, ulong hold_timeout, enum_rpl_channel_type channel_type)=0
 Executed before a transaction begins. More...
 
virtual int before_commit (my_thread_id thread_id, enum_transaction_origin origin)=0
 Executed before commit. More...
 
virtual int before_rollback (my_thread_id thread_id, enum_transaction_origin origin)=0
 Executed before rollback. More...
 
virtual int after_commit (my_thread_id thread_id, rpl_sidno sidno, rpl_gno gno)=0
 Executed after commit. More...
 
virtual int after_rollback (my_thread_id thread_id)=0
 Executed after rollback. More...
 

Detailed Description

Listener for transaction life cycle events.

Member Enumeration Documentation

◆ enum_transaction_origin

Enum for transaction origins.

Enumerator
GROUP_APPLIER_TRANSACTION 
GROUP_RECOVERY_TRANSACTION 
GROUP_LOCAL_TRANSACTION 

Constructor & Destructor Documentation

◆ ~Group_transaction_listener()

Group_transaction_listener::~Group_transaction_listener ( )
virtual

Class destructor.

Member Function Documentation

◆ after_commit()

virtual int Group_transaction_listener::after_commit ( my_thread_id  thread_id,
rpl_sidno  sidno,
rpl_gno  gno 
)
pure virtual

Executed after commit.

Parameters
thread_idthe transaction thread id
sidnothe transaction sidno
gnothe transaction gno

Implemented in Transaction_consistency_manager, Primary_election_handler, and Server_ongoing_transactions_handler.

◆ after_rollback()

virtual int Group_transaction_listener::after_rollback ( my_thread_id  thread_id)
pure virtual

Executed after rollback.

Parameters
thread_idthe transaction thread id

Implemented in Transaction_consistency_manager, Primary_election_handler, and Server_ongoing_transactions_handler.

◆ before_commit()

virtual int Group_transaction_listener::before_commit ( my_thread_id  thread_id,
enum_transaction_origin  origin 
)
pure virtual

Executed before commit.

Parameters
thread_idthe transaction thread id
originwho applied it

Implemented in Transaction_consistency_manager, Primary_election_handler, and Server_ongoing_transactions_handler.

◆ before_rollback()

virtual int Group_transaction_listener::before_rollback ( my_thread_id  thread_id,
enum_transaction_origin  origin 
)
pure virtual

Executed before rollback.

Parameters
thread_idthe transaction thread id
originwho applied it

Implemented in Transaction_consistency_manager, Primary_election_handler, and Server_ongoing_transactions_handler.

◆ before_transaction_begin()

virtual int Group_transaction_listener::before_transaction_begin ( my_thread_id  thread_id,
ulong  gr_consistency_level,
ulong  hold_timeout,
enum_rpl_channel_type  channel_type 
)
pure virtual

Executed before a transaction begins.

Parameters
thread_idthe transaction thread id
gr_consistency_levelthe current consistency level for this session
hold_timeoutthe max time to execute an action on this transaction
channel_typetype channel that receives transaction

Implemented in Transaction_consistency_manager, Server_ongoing_transactions_handler, and Primary_election_handler.


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