#include <group_partition_handling.h>
◆ Group_partition_handling()
Group_partition_handling::Group_partition_handling |
( |
ulong |
unreachable_timeout | ) |
|
◆ ~Group_partition_handling()
Group_partition_handling::~Group_partition_handling |
( |
| ) |
|
|
virtual |
◆ abort_partition_handler_if_running()
bool Group_partition_handling::abort_partition_handler_if_running |
( |
| ) |
|
Signals the thread to abort the waiting process.
- Returns
- the operation status
- Return values
-
true | It already killed pending transactions and left the group |
false | The thread was not running, or was aborted in time. |
◆ get_timeout_on_unreachable()
ulong Group_partition_handling::get_timeout_on_unreachable |
( |
| ) |
|
- Returns
- the configured timeout
- Return values
-
0 | The partition thread won't run or timeout. |
>0 | After this seconds the plugin will move to ERROR in a minority |
◆ is_member_on_partition()
bool Group_partition_handling::is_member_on_partition |
( |
| ) |
|
Is the member currently/or was on a partition?
- Note
- this flag is set to true whenever the partition handler is launched and set to false whenever someone tries to abort it.
- Returns
- is member on partition, or was on one
- Return values
-
◆ is_partition_handler_running()
bool Group_partition_handling::is_partition_handler_running |
( |
| ) |
|
Is the partition handler thread running.
- Returns
- true if running, false otherwise
◆ is_partition_handling_terminated()
bool Group_partition_handling::is_partition_handling_terminated |
( |
| ) |
|
- Returns
- is the process finished
- Return values
-
true | It already killed pending transactions and left the group |
false | The thread was not running, or was aborted. |
◆ launch_partition_handler_thread()
int Group_partition_handling::launch_partition_handler_thread |
( |
| ) |
|
Launch the partition thread handler.
- Returns
- the operation status
- Return values
-
◆ partition_thread_handler()
int Group_partition_handling::partition_thread_handler |
( |
| ) |
|
The thread handler.
- Return values
-
◆ terminate_partition_handler_thread()
int Group_partition_handling::terminate_partition_handler_thread |
( |
| ) |
|
Terminate the partition thread handler.
- Returns
- the operation status
- Return values
-
◆ update_timeout_on_unreachable()
void Group_partition_handling::update_timeout_on_unreachable |
( |
ulong |
unreachable_timeout | ) |
|
Updates the timeout when the member becomes unreachable.
- Parameters
-
unreachable_timeout | The timeout before going into error |
◆ group_partition_thd_state
thread_state Group_partition_handling::group_partition_thd_state |
|
private |
Group partition thread state.
◆ member_in_partition
bool Group_partition_handling::member_in_partition |
|
private |
◆ partition_handling_aborted
bool Group_partition_handling::partition_handling_aborted |
|
private |
Should we abort the process that will kill pending transaction.
◆ partition_handling_terminated
bool Group_partition_handling::partition_handling_terminated |
|
private |
Did the partition handler terminate and killed pending transactions.
◆ partition_trx_handler_pthd
◆ run_cond
◆ run_lock
◆ timeout_on_unreachable
ulong Group_partition_handling::timeout_on_unreachable |
|
private |
The number of seconds until the member goes into error state.
◆ trx_termination_aborted_cond
mysql_cond_t Group_partition_handling::trx_termination_aborted_cond |
|
private |
◆ trx_termination_aborted_lock
mysql_mutex_t Group_partition_handling::trx_termination_aborted_lock |
|
private |
The documentation for this class was generated from the following files: