#include <group_transaction_observation_manager.h>
◆ Group_transaction_observation_manager()
Group_transaction_observation_manager::Group_transaction_observation_manager |
( |
| ) |
|
◆ ~Group_transaction_observation_manager()
Group_transaction_observation_manager::~Group_transaction_observation_manager |
( |
| ) |
|
◆ after_commit()
◆ after_rollback()
◆ before_commit()
◆ before_rollback()
int Group_transaction_observation_manager::before_rollback |
( |
my_thread_id |
thread_id | ) |
|
◆ before_transaction_begin()
int Group_transaction_observation_manager::before_transaction_begin |
( |
my_thread_id |
thread_id, |
|
|
ulong |
gr_consistency_level, |
|
|
ulong |
hold_timeout, |
|
|
enum_rpl_channel_type |
rpl_channel_type, |
|
|
const THD * |
thd |
|
) |
| |
Executed before a transaction begins.
- Parameters
-
thread_id | the transaction thread id |
gr_consistency_level | the current consistency level for this session |
hold_timeout | the max time to execute an action on this transaction |
rpl_channel_type | type channel that receives transaction |
thd | server thd that represents client session |
◆ get_all_observers()
Get all registered observers.
- Note
- to get the list and while using it, you should take a read lock from transaction_observer_list_lock (you can use read_lock_observer_list())
- Returns
- The list of all registered observers
◆ is_any_observer_present()
bool Group_transaction_observation_manager::is_any_observer_present |
( |
| ) |
|
Are there any observers present.
- Returns
- true if at least one observer is present, false otherwise
◆ read_lock_observer_list()
void Group_transaction_observation_manager::read_lock_observer_list |
( |
| ) |
|
Locks the observer list for reads.
◆ register_transaction_observer()
◆ unlock_observer_list()
void Group_transaction_observation_manager::unlock_observer_list |
( |
| ) |
|
Unlocks the observer list.
◆ unregister_transaction_observer()
◆ write_lock_observer_list()
void Group_transaction_observation_manager::write_lock_observer_list |
( |
| ) |
|
Locks the observer list for writes.
◆ group_transaction_listeners
◆ registered_observers
std::atomic<bool> Group_transaction_observation_manager::registered_observers |
|
private |
Flag that indicates that there are observers (for performance)
◆ transaction_observer_list_lock
Checkable_rwlock* Group_transaction_observation_manager::transaction_observer_list_lock |
|
private |
The lock to protect the list.
The documentation for this class was generated from the following files: