| MySQL 5.6.14 Source Code Document
    | 
#include "univ.i"#include "trx0types.h"#include "trx0sys.h"#include "ut0bh.h"#include "trx0rseg.ic"

Go to the source code of this file.
| Classes | |
| struct | trx_rseg_t | 
| struct | rseg_queue_t | 
| Functions | |
| UNIV_INLINE trx_rsegf_t * | trx_rsegf_get (ulint space, ulint zip_size, ulint page_no, mtr_t *mtr) | 
| UNIV_INLINE trx_rsegf_t * | trx_rsegf_get_new (ulint space, ulint zip_size, ulint page_no, mtr_t *mtr) | 
| UNIV_INLINE ulint | trx_rsegf_get_nth_undo (trx_rsegf_t *rsegf, ulint n, mtr_t *mtr) | 
| UNIV_INLINE void | trx_rsegf_set_nth_undo (trx_rsegf_t *rsegf, ulint n, ulint page_no, mtr_t *mtr) | 
| UNIV_INLINE ulint | trx_rsegf_undo_find_free (trx_rsegf_t *rsegf, mtr_t *mtr) | 
| UNIV_INLINE trx_rseg_t * | trx_rseg_get_on_id (ulint id) | 
| UNIV_INTERN ulint | trx_rseg_header_create (ulint space, ulint zip_size, ulint max_size, ulint rseg_slot_no, mtr_t *mtr) | 
| UNIV_INTERN void | trx_rseg_array_init (trx_sysf_t *sys_header, ib_bh_t *ib_bh, mtr_t *mtr) | 
| UNIV_INTERN void | trx_rseg_mem_free (trx_rseg_t *rseg) | 
| UNIV_INTERN trx_rseg_t * | trx_rseg_create (ulint space) | 
| UNIV_INTERN ulint | trx_rseg_get_n_undo_tablespaces (ulint *space_ids) | 
| #define TRX_RSEG_HISTORY | 
Definition at line 214 of file trx0rseg.h.
| #define TRX_RSEG_HISTORY_SIZE | 
Definition at line 213 of file trx0rseg.h.
| #define TRX_RSEG_MAX_SIZE | 
Definition at line 212 of file trx0rseg.h.
| #define TRX_RSEG_SLOT_PAGE_NO | 
Definition at line 202 of file trx0rseg.h.
| UNIV_INTERN void trx_rseg_array_init | ( | trx_sysf_t * | sys_header, | 
| ib_bh_t * | ib_bh, | ||
| mtr_t * | mtr | ||
| ) | 
Creates the memory copies for rollback segments and initializes the rseg array in trx_sys at a database startup. in/out: mtr
Creates the memory copies for rollback segments and initializes the rseg array in trx_sys at a database startup.
| sys_header | in/out: trx system header | 
| ib_bh | in: rseg queue | 
| mtr | in: mtr | 
Definition at line 350 of file trx0rseg.cc.

| UNIV_INTERN trx_rseg_t* trx_rseg_create | ( | ulint | space | ) | 
in: id of UNDO tablespace
| space | in: id of UNDO tablespace | 
Definition at line 301 of file trx0rseg.cc.


| UNIV_INTERN ulint trx_rseg_get_n_undo_tablespaces | ( | ulint * | space_ids | ) | 
out: array of space ids of UNDO tablespaces
| space_ids | out: array of space ids of UNDO tablespaces | 
Definition at line 369 of file trx0rseg.cc.

| UNIV_INLINE trx_rseg_t* trx_rseg_get_on_id | ( | ulint | id | ) | 
Looks for a rollback segment, based on the rollback segment id.
| UNIV_INTERN ulint trx_rseg_header_create | ( | ulint | space, | 
| ulint | zip_size, | ||
| ulint | max_size, | ||
| ulint | rseg_slot_no, | ||
| mtr_t * | mtr | ||
| ) | 
Creates a rollback segment header. This function is called only when a new rollback segment is created in the database.
Creates a rollback segment header. This function is called only when a new rollback segment is created in the database.
| space | in: space id | 
| zip_size | in: compressed page size in bytes or 0 for uncompressed pages | 
| max_size | in: max size in pages | 
| rseg_slot_no | in: rseg id == slot number in trx sys | 
| mtr | in: mtr | 
Definition at line 50 of file trx0rseg.cc.


| UNIV_INTERN void trx_rseg_mem_free | ( | trx_rseg_t * | rseg | ) | 
in, own: instance to free
Free's an instance of the rollback segment in memory.
Definition at line 115 of file trx0rseg.cc.

| UNIV_INLINE trx_rsegf_t* trx_rsegf_get | ( | ulint | space, | 
| ulint | zip_size, | ||
| ulint | page_no, | ||
| mtr_t * | mtr | ||
| ) | 
Gets a rollback segment header.
| space | in: space where placed | 
| zip_size | in: compressed page size in bytes or 0 for uncompressed pages | 
| page_no | in: page number of the header | 

| UNIV_INLINE trx_rsegf_t* trx_rsegf_get_new | ( | ulint | space, | 
| ulint | zip_size, | ||
| ulint | page_no, | ||
| mtr_t * | mtr | ||
| ) | 
Gets a newly created rollback segment header.
| space | in: space where placed | 
| zip_size | in: compressed page size in bytes or 0 for uncompressed pages | 
| page_no | in: page number of the header | 

| UNIV_INLINE ulint trx_rsegf_get_nth_undo | ( | trx_rsegf_t * | rsegf, | 
| ulint | n, | ||
| mtr_t * | mtr | ||
| ) | 
Gets the file page number of the nth undo log slot.
| rsegf | in: rollback segment header | 
| n | in: index of slot | 
| UNIV_INLINE void trx_rsegf_set_nth_undo | ( | trx_rsegf_t * | rsegf, | 
| ulint | n, | ||
| ulint | page_no, | ||
| mtr_t * | mtr | ||
| ) | 
Sets the file page number of the nth undo log slot. in: mtr
| rsegf | in: rollback segment header | 
| n | in: index of slot | 
| page_no | in: page number of the undo log segment | 

| UNIV_INLINE ulint trx_rsegf_undo_find_free | ( | trx_rsegf_t * | rsegf, | 
| mtr_t * | mtr | ||
| ) | 
Looks for a free slot for an undo log segment.
| rsegf | in: rollback segment header |