MySQL 5.6.14 Source Code Document
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
trx_purge_t Struct Reference

#include <trx0purge.h>

Collaboration diagram for trx_purge_t:

Public Attributes

sess_tsess
trx_ttrx
rw_lock_t latch
os_event_t event
ulint n_stop
volatile bool running
volatile purge_state_t state
que_tquery
read_view_tview
volatile ulint n_submitted
volatile ulint n_completed
purge_iter_t iter
purge_iter_t limit
ibool next_stored
trx_rseg_trseg
ulint page_no
ulint offset
ulint hdr_page_no
ulint hdr_offset
mem_heap_theap
ib_bh_tib_bh
ib_mutex_t bh_mutex

Detailed Description

The control structure used in the purge operation

Definition at line 134 of file trx0purge.h.

Member Data Documentation

ib_mutex_t trx_purge_t::bh_mutex

Mutex protecting ib_bh

Definition at line 205 of file trx0purge.h.

os_event_t trx_purge_t::event

State signal event

Definition at line 148 of file trx0purge.h.

ulint trx_purge_t::hdr_offset

Header byte offset on the page

Definition at line 196 of file trx0purge.h.

ulint trx_purge_t::hdr_page_no

Header page of the undo log where the next record to purge belongs

Definition at line 194 of file trx0purge.h.

mem_heap_t* trx_purge_t::heap

Temporary storage used during a purge: can be emptied after purge completes

Definition at line 198 of file trx0purge.h.

ib_bh_t* trx_purge_t::ib_bh

Binary min-heap, ordered on rseg_queue_t::trx_no. It is protected by the bh_mutex

Definition at line 202 of file trx0purge.h.

rw_lock_t trx_purge_t::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. It also protects state and running

Definition at line 141 of file trx0purge.h.

volatile ulint trx_purge_t::n_completed

Count of total tasks completed

Definition at line 161 of file trx0purge.h.

ulint trx_purge_t::n_stop

Counter to track number stops

Definition at line 149 of file trx0purge.h.

volatile ulint trx_purge_t::n_submitted

Count of total tasks submitted to the task queue

Definition at line 159 of file trx0purge.h.

ibool trx_purge_t::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 181 of file trx0purge.h.

ulint trx_purge_t::offset

Page offset for the next undo record to purge, 0 if the dummy record

Definition at line 191 of file trx0purge.h.

ulint trx_purge_t::page_no

Page number for the next undo record to purge, page number of the log header, if dummy record

Definition at line 188 of file trx0purge.h.

que_t* trx_purge_t::query

The query graph which will do the parallelized purge operation

Definition at line 155 of file trx0purge.h.

trx_rseg_t* trx_purge_t::rseg

Rollback segment for the next undo record to purge

Definition at line 186 of file trx0purge.h.

volatile bool trx_purge_t::running

true, if purge is active, we check this without the latch too

Definition at line 150 of file trx0purge.h.

sess_t* trx_purge_t::sess

System session running the purge query

Definition at line 135 of file trx0purge.h.

volatile purge_state_t trx_purge_t::state

Purge coordinator thread states, we check this in several places without holding the latch.

Definition at line 152 of file trx0purge.h.

trx_t* trx_purge_t::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 137 of file trx0purge.h.

read_view_t* trx_purge_t::view

The purge will not remove undo logs which are >= this view (purge view)

Definition at line 157 of file trx0purge.h.


The documentation for this struct was generated from the following file: