![]() |
MySQL 26.7.0
Source Code Documentation
|
Rescue task to rollback conflicting transaction. More...
#include <rescue_task.h>
Public Member Functions | |
| Rescue_task (Relay_log_info *rli, Rescue_operation_type op_type, std::promise< bool > &action_promise, int job_id) | |
| Constructor. More... | |
| Rescue_task ()=default | |
| Default constructor, required by synchronized queue. More... | |
| void | operator() () |
| Perform rescue operation. More... | |
| void | set_promise () |
| Sets promise value, e.g. in case when task cannot be executed (stop) More... | |
Private Member Functions | |
| void | rollback_trx () |
| Rolls back transaction attached to RLI. More... | |
Private Attributes | |
| Relay_log_info * | m_rli {nullptr} |
| RLI attached to the transaction to rescue. More... | |
| Rescue_operation_type | m_rescue_operation_type |
| Rescue operation type. More... | |
| std::optional< std::reference_wrapper< std::promise< bool > > > | m_action_promise |
| Promise to synchronize on after operation is done. More... | |
| int | m_job_id {0} |
| Job internal identifier. More... | |
Rescue task to rollback conflicting transaction.
| mysql::csa::Rescue_task::Rescue_task | ( | Relay_log_info * | rli, |
| Rescue_operation_type | op_type, | ||
| std::promise< bool > & | action_promise, | ||
| int | job_id | ||
| ) |
Constructor.
| rli | RLI attached to the transaction to rescue |
| op_type | Rescue operation type |
| action_promise | Promise used to synchronize thread waiting for rescue operation to finish |
| job_id | Job internal identifier |
|
default |
Default constructor, required by synchronized queue.
| void mysql::csa::Rescue_task::operator() | ( | void | ) |
Perform rescue operation.
|
private |
Rolls back transaction attached to RLI.
| void mysql::csa::Rescue_task::set_promise | ( | ) |
Sets promise value, e.g. in case when task cannot be executed (stop)
|
private |
Promise to synchronize on after operation is done.
|
private |
Job internal identifier.
|
private |
Rescue operation type.
|
private |
RLI attached to the transaction to rescue.