MySQL 8.0.39
Source Code Documentation
|
This class represents the XA ROLLBACK ...
SQL statement which rollbacks and terminates an XA transaction with the given xid value.
More...
#include <sql_xa_rollback.h>
Public Member Functions | |
Sql_cmd_xa_rollback (xid_t *xid_arg) | |
Class constructor. More... | |
virtual | ~Sql_cmd_xa_rollback () override=default |
enum_sql_command | sql_command_code () const override |
Retrieves the SQL command code for this class, SQLCOM_XA_ROLLBACK . More... | |
bool | execute (THD *thd) override |
Executes the SQL command. More... | |
Public Member Functions inherited from Sql_cmd_xa_second_phase | |
Sql_cmd_xa_second_phase (xid_t *xid_arg) | |
Class constructor. More... | |
virtual | ~Sql_cmd_xa_second_phase () override=default |
Public Member Functions inherited from Sql_cmd | |
bool | needs_explicit_preparation () const |
bool | is_regular () const |
bool | is_prepared () const |
virtual bool | prepare (THD *) |
Prepare this SQL statement. More... | |
virtual void | cleanup (THD *) |
Command-specific reinitialization before execution of prepared statement. More... | |
void | set_owner (Prepared_statement *stmt) |
Set the owning prepared statement. More... | |
Prepared_statement * | owner () const |
Get the owning prepared statement. More... | |
void | set_as_part_of_sp () |
Mark statement as part of procedure. More... | |
bool | is_part_of_sp () const |
virtual bool | is_dml () const |
virtual bool | is_single_table_plan () const |
virtual bool | accept (THD *, Select_lex_visitor *) |
virtual const MYSQL_LEX_CSTRING * | eligible_secondary_storage_engine () const |
Is this statement of a type and on a form that makes it eligible for execution in a secondary storage engine? More... | |
void | disable_secondary_storage_engine () |
Disable use of secondary storage engines in this statement. More... | |
bool | secondary_storage_engine_disabled () const |
Has use of secondary storage engines been disabled for this statement? More... | |
void | use_secondary_storage_engine (const handlerton *hton) |
Mark the current statement as using a secondary storage engine. More... | |
bool | using_secondary_storage_engine () const |
Is this statement using a secondary storage engine? More... | |
const handlerton * | secondary_engine () const |
Get the handlerton of the secondary engine that is used for executing this statement, or nullptr if a secondary engine is not used. More... | |
void | set_optional_transform_prepared (bool value) |
bool | is_optional_transform_prepared () |
Private Member Functions | |
bool | trans_xa_rollback (THD *thd) |
Roll back and terminate a XA transaction. More... | |
bool | process_attached_xa_rollback (THD *thd) const |
Handle the statement XA ROLLBACK for the case when xid corresponds to an XA transaction that is attached to the thread's THD object, that is a transaction that is part of the current thread's session context. More... | |
bool | process_detached_xa_rollback (THD *thd) |
Handle the statement XA ROLLBACK for the case when xid corresponds to an XA transaction that is detached from the thread's THD, that it a transaction that isn't part of the current's thread session context. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Sql_cmd_xa_second_phase | |
bool | find_and_initialize_xa_context (THD *thd) |
Tries to find and initialize the Transaction_ctx for the underlying detached XA transaction. More... | |
bool | acquire_locks (THD *thd) |
Tries to acquire the locks necessary to finalize the underlying detached XA transaction. More... | |
void | release_locks () const |
Release any locks acquires in acquire_locks still needing to be released. More... | |
void | setup_thd_context (THD *thd) |
Initializes the necessary parts of the thd parameter, transferring some of the detached XA transaction context to the active session. More... | |
bool | enter_commit_order (THD *thd) |
For replica applier threads, enters the wait on the commit order. More... | |
void | assign_xid_to_thd (THD *thd) const |
Sets the XID_STATE of the THD session object parameter as in detached state and copies into it the XID of the detached XA transaction. More... | |
void | exit_commit_order (THD *thd) const |
For replica applier threads, finishes the wait on the commit order and allows other threads to proceed. More... | |
void | cleanup_context (THD *thd) const |
Cleans up the THD context in order to prepare it for re-use. More... | |
void | dispose () |
Disposes of member variables that need it, because destructors for Sql_cmd classes aren't invoked (since they are created in the internal memory pool, memory is disposed as a all block). More... | |
Protected Member Functions inherited from Sql_cmd | |
Sql_cmd () | |
virtual | ~Sql_cmd () |
void | set_prepared () |
Set this statement as prepared. More... | |
Protected Attributes inherited from Sql_cmd_xa_second_phase | |
xid_t * | m_xid {nullptr} |
The XID associated with the underlying XA transaction. More... | |
MDL_savepoint | m_mdl_savepoint |
The MDL savepoint used to rollback the MDL context when transient errors occur. More... | |
std::shared_ptr< Transaction_ctx > | m_detached_trx_context {nullptr} |
The detached transaction context, retrieved from the transaction cache. More... | |
bool | m_gtid_error {false} |
Whether or not the initialization of GTIDs returned an error. More... | |
bool | m_need_clear_owned_gtid {false} |
Whether or not the OWNED_GTID related structures need to be cleaned. More... | |
bool | m_result {false} |
The incremental success of the several initialization and deinitialization steps. More... | |
This class represents the XA ROLLBACK ...
SQL statement which rollbacks and terminates an XA transaction with the given xid value.
|
explicit |
Class constructor.
xid_arg | XID of the XA transacation about to be rolled back. |
|
overridevirtualdefault |
|
overridevirtual |
Executes the SQL command.
thd | The THD session object within which the command is being executed. |
Implements Sql_cmd.
|
private |
Handle the statement XA ROLLBACK for the case when xid corresponds to an XA transaction that is attached to the thread's THD object, that is a transaction that is part of the current thread's session context.
thd | The THD session object within which the command is being executed. |
false | Success |
true | Failure |
|
private |
Handle the statement XA ROLLBACK for the case when xid corresponds to an XA transaction that is detached from the thread's THD, that it a transaction that isn't part of the current's thread session context.
thd | The THD session object within which the command is being executed. |
false | Success |
true | Failure |
|
overridevirtual |
Retrieves the SQL command code for this class, SQLCOM_XA_ROLLBACK
.
SQLCOM_XA_ROLLBACK
. Implements Sql_cmd.
|
private |
Roll back and terminate a XA transaction.
thd | The THD session object within which the command is being executed. |
false | Success |
true | Failure |