![]()  | 
  
    MySQL 8.0.44
    
   Source Code Documentation 
   | 
 
Transaction undo log memory object; this is protected by the undo_mutex in the corresponding transaction object. More...
#include <trx0undo.h>
Public Types | |
| enum class | Gtid_storage { NONE , COMMIT , PREPARE_AND_COMMIT } | 
| Undo log may could be allocated to store transaction GTIDs.  More... | |
Public Member Functions | |
| bool | gtid_allocated (bool is_prepare) const | 
| Check if space for GTID is allocated in undo.  More... | |
| std::tuple< int, size_t > | gtid_get_details (bool is_prepare) const | 
| Get offset and flag for GTID stored in undo.  More... | |
| void | set_prepared (const XID *in_xid) | 
| void | set_prepared_in_tc () | 
| bool | is_prepared () const | 
| UT_LIST_NODE_T (trx_undo_t) undo_list | |
| undo log objects in the rollback segment are chained into lists  More... | |
Public Attributes | |
| ulint | id | 
| undo log slot number within the rollback segment  More... | |
| ulint | type | 
| TRX_UNDO_INSERT or TRX_UNDO_UPDATE.  More... | |
| ulint | state | 
| state of the corresponding undo log segment  More... | |
| bool | del_marks | 
| relevant only in an update undo log: this is true if the transaction may have delete marked records, because of a delete of a row or an update of an indexed field; purge is then necessary; also true if the transaction has updated an externally stored field  More... | |
| trx_id_t | trx_id | 
| id of the trx assigned to the undo log  More... | |
| XID | xid | 
| X/Open XA transaction identification.  More... | |
| ulint | flag | 
| flag for current transaction XID and GTID.  More... | |
| Gtid_storage | m_gtid_storage {Gtid_storage::NONE} | 
| Storage space allocated for GTIDs.  More... | |
| bool | dict_operation | 
| true if a dict operation trx  More... | |
| trx_rseg_t * | rseg | 
| rseg where the undo log belongs  More... | |
| space_id_t | space | 
| space id where the undo log placed  More... | |
| page_size_t | page_size | 
| page_no_t | hdr_page_no | 
| page number of the header page in the undo log  More... | |
| ulint | hdr_offset | 
| header offset of the undo log on the page  More... | |
| page_no_t | last_page_no | 
| page number of the last page in the undo log; this may differ from top_page_no during a rollback  More... | |
| ulint | size | 
| current size in pages  More... | |
| ulint | empty | 
| true if the stack of undo log records is currently empty  More... | |
| page_no_t | top_page_no | 
| page number where the latest undo log record was catenated; during rollback the page from which the latest undo record was chosen  More... | |
| ulint | top_offset | 
| offset of the latest undo record, i.e., the topmost element in the undo log if we think of it as a stack  More... | |
| undo_no_t | top_undo_no | 
| undo number of the latest record  More... | |
| buf_block_t * | guess_block | 
| guess for the buffer block where the top page might reside  More... | |
Transaction undo log memory object; this is protected by the undo_mutex in the corresponding transaction object.
      
  | 
  strong | 
| bool trx_undo_t::gtid_allocated | ( | bool | is_prepare | ) | const | 
Check if space for GTID is allocated in undo.
| [in] | is_prepare | if XA prepare GTID | 
| std::tuple< int, size_t > trx_undo_t::gtid_get_details | ( | bool | is_prepare | ) | const | 
Get offset and flag for GTID stored in undo.
| [in] | is_prepare | if XA prepare GTID | 
      
  | 
  inline | 
      
  | 
  inline | 
      
  | 
  inline | 
| trx_undo_t::UT_LIST_NODE_T | ( | trx_undo_t | ) | 
undo log objects in the rollback segment are chained into lists
| bool trx_undo_t::del_marks | 
relevant only in an update undo log: this is true if the transaction may have delete marked records, because of a delete of a row or an update of an indexed field; purge is then necessary; also true if the transaction has updated an externally stored field
| bool trx_undo_t::dict_operation | 
true if a dict operation trx
| ulint trx_undo_t::empty | 
true if the stack of undo log records is currently empty
| ulint trx_undo_t::flag | 
flag for current transaction XID and GTID.
Persisted in TRX_UNDO_FLAGS flag of undo header.
| buf_block_t* trx_undo_t::guess_block | 
guess for the buffer block where the top page might reside
| ulint trx_undo_t::hdr_offset | 
header offset of the undo log on the page
| page_no_t trx_undo_t::hdr_page_no | 
page number of the header page in the undo log
| ulint trx_undo_t::id | 
undo log slot number within the rollback segment
| page_no_t trx_undo_t::last_page_no | 
page number of the last page in the undo log; this may differ from top_page_no during a rollback
| Gtid_storage trx_undo_t::m_gtid_storage {Gtid_storage::NONE} | 
Storage space allocated for GTIDs.
| page_size_t trx_undo_t::page_size | 
| trx_rseg_t* trx_undo_t::rseg | 
rseg where the undo log belongs
| ulint trx_undo_t::size | 
current size in pages
| space_id_t trx_undo_t::space | 
space id where the undo log placed
| ulint trx_undo_t::state | 
state of the corresponding undo log segment
| ulint trx_undo_t::top_offset | 
offset of the latest undo record, i.e., the topmost element in the undo log if we think of it as a stack
| page_no_t trx_undo_t::top_page_no | 
page number where the latest undo log record was catenated; during rollback the page from which the latest undo record was chosen
| undo_no_t trx_undo_t::top_undo_no | 
undo number of the latest record
| trx_id_t trx_undo_t::trx_id | 
id of the trx assigned to the undo log
| ulint trx_undo_t::type | 
TRX_UNDO_INSERT or TRX_UNDO_UPDATE.
| XID trx_undo_t::xid | 
X/Open XA transaction identification.