#include <trx0purge.h>
Public Attributes | |
| ulint | state |
| sess_t * | sess |
| trx_t * | trx |
| que_t * | query |
| rw_lock_t | latch |
| read_view_t * | view |
| mutex_t | mutex |
| ulint | n_pages_handled |
| ulint | handle_limit |
| trx_id_t | purge_trx_no |
| undo_no_t | purge_undo_no |
| ibool | next_stored |
| trx_rseg_t * | rseg |
| ulint | page_no |
| ulint | offset |
| ulint | hdr_page_no |
| ulint | hdr_offset |
| trx_undo_arr_t * | arr |
| mem_heap_t * | heap |
The control structure used in the purge operation
Definition at line 128 of file trx0purge.h.
| trx_undo_arr_t* trx_purge_struct::arr |
Array of transaction numbers and undo numbers of the undo records currently under processing in purge
Definition at line 177 of file trx0purge.h.
Referenced by trx_purge_sys_close(), and trx_purge_sys_create().
| ulint trx_purge_struct::handle_limit |
Target of how many pages to get processed in the current purge
Definition at line 148 of file trx0purge.h.
Referenced by trx_purge(), and trx_purge_fetch_next_rec().
| ulint trx_purge_struct::hdr_offset |
Header byte offset on the page
Definition at line 175 of file trx0purge.h.
Referenced by trx_purge_sys_print().
| ulint trx_purge_struct::hdr_page_no |
Header page of the undo log where the next record to purge belongs
Definition at line 173 of file trx0purge.h.
Referenced by trx_purge_sys_print().
| mem_heap_t* trx_purge_struct::heap |
Temporary storage used during a purge: can be emptied after purge completes
Definition at line 180 of file trx0purge.h.
Referenced by trx_purge(), trx_purge_sys_close(), and trx_purge_sys_create().
| rw_lock_t trx_purge_struct::latch |
The latch protecting the purge view. A purge operation must acquire an x-latch here for the instant at which it changes the purge view: an undo log operation can prevent this by obtaining an s-latch here.
Definition at line 137 of file trx0purge.h.
Referenced by row_vers_build_for_consistent_read(), row_vers_build_for_semi_consistent_read(), row_vers_impl_x_locked_off_kernel(), row_vers_must_preserve_del_marked(), row_vers_old_has_index_entry(), trx_purge(), trx_purge_sys_close(), trx_purge_sys_create(), trx_purge_update_undo_must_exist(), trx_undo_get_undo_rec(), and trx_undo_prev_version_build().
| mutex_t trx_purge_struct::mutex |
Mutex protecting the fields below
Definition at line 145 of file trx0purge.h.
Referenced by trx_purge(), trx_purge_fetch_next_rec(), trx_purge_rec_release(), trx_purge_sys_close(), and trx_purge_sys_create().
| ulint trx_purge_struct::n_pages_handled |
Approximate number of undo log pages processed in purge
Definition at line 146 of file trx0purge.h.
Referenced by trx_purge(), trx_purge_fetch_next_rec(), and trx_purge_sys_create().
| ibool trx_purge_struct::next_stored |
TRUE if the info of the next record to purge is stored below: if yes, then the transaction number and the undo number of the record are stored in purge_trx_no and purge_undo_no above
Definition at line 160 of file trx0purge.h.
Referenced by trx_purge_fetch_next_rec(), trx_purge_sys_create(), and trx_purge_sys_print().
| ulint trx_purge_struct::offset |
Page offset for the next undo record to purge, 0 if the dummy record
Definition at line 170 of file trx0purge.h.
Referenced by trx_purge_fetch_next_rec(), and trx_purge_sys_print().
| ulint trx_purge_struct::page_no |
Page number for the next undo record to purge, page number of the log header, if dummy record
Definition at line 167 of file trx0purge.h.
Referenced by trx_purge_fetch_next_rec(), and trx_purge_sys_print().
| trx_id_t trx_purge_struct::purge_trx_no |
Purge has advanced past all transactions whose number is less than this
Definition at line 154 of file trx0purge.h.
Referenced by lock_print_info_summary(), trx_purge_fetch_next_rec(), trx_purge_sys_create(), and trx_purge_sys_print().
| undo_no_t trx_purge_struct::purge_undo_no |
Purge has advanced past all records whose undo number is less than this
Definition at line 157 of file trx0purge.h.
Referenced by lock_print_info_summary(), trx_purge_fetch_next_rec(), trx_purge_sys_create(), and trx_purge_sys_print().
| que_t* trx_purge_struct::query |
The query graph which will do the parallelized purge operation
Definition at line 135 of file trx0purge.h.
Referenced by trx_purge(), trx_purge_sys_close(), and trx_purge_sys_create().
| trx_rseg_t* trx_purge_struct::rseg |
Rollback segment for the next undo record to purge
Definition at line 165 of file trx0purge.h.
Referenced by trx_purge_fetch_next_rec().
| sess_t* trx_purge_struct::sess |
System session running the purge query
Definition at line 130 of file trx0purge.h.
Referenced by trx_purge_sys_close(), and trx_purge_sys_create().
| ulint trx_purge_struct::state |
Purge system state
Definition at line 129 of file trx0purge.h.
Referenced by trx_purge(), trx_purge_fetch_next_rec(), and trx_purge_sys_create().
| trx_t* trx_purge_struct::trx |
System transaction running the purge query: this trx is not in the trx list of the trx system and it never ends
Definition at line 132 of file trx0purge.h.
Referenced by trx_purge(), and trx_purge_sys_create().
| read_view_t* trx_purge_struct::view |
The purge will not remove undo logs which are >= this view (purge view)
Definition at line 143 of file trx0purge.h.
Referenced by trx_purge(), trx_purge_fetch_next_rec(), trx_purge_sys_close(), trx_purge_sys_create(), trx_purge_sys_print(), and trx_purge_update_undo_must_exist().