InnoDB Plugin  1.0
Functions
row0upd.ic File Reference
#include "mtr0log.h"
#include "trx0trx.h"
#include "trx0undo.h"
#include "row0row.h"
#include "lock0lock.h"
#include "page0zip.h"
Include dependency graph for row0upd.ic:
This graph shows which files directly or indirectly include this file:

Functions

UNIV_INLINE upd_tupd_create (ulint n, mem_heap_t *heap)
UNIV_INLINE ulint upd_get_n_fields (const upd_t *update)
UNIV_INLINE upd_field_tupd_get_nth_field (const upd_t *update, ulint n)
UNIV_INLINE void upd_field_set_field_no (upd_field_t *upd_field, ulint field_no, dict_index_t *index, trx_t *trx)
UNIV_INLINE const upd_field_tupd_get_field_by_field_no (const upd_t *update, ulint no)
UNIV_INLINE void row_upd_rec_sys_fields (rec_t *rec, page_zip_des_t *page_zip, dict_index_t *index, const ulint *offsets, const trx_t *trx, roll_ptr_t roll_ptr)

Detailed Description

Update of a row

Created 12/27/1996 Heikki Tuuri

Function Documentation

UNIV_INLINE void row_upd_rec_sys_fields ( rec_t *  rec,
page_zip_des_t page_zip,
dict_index_t index,
const ulint *  offsets,
const trx_t trx,
roll_ptr_t  roll_ptr 
)

Updates the trx id and roll ptr field in a clustered index record when a row is updated or marked deleted.

Parameters
recin/out: record
page_zipin/out: compressed page whose uncompressed part will be updated, or NULL
indexin: clustered index
offsetsin: rec_get_offsets(rec, index)
trxin: transaction
roll_ptrin: roll ptr of the undo log record, can be 0 during IMPORT
UNIV_INLINE upd_t* upd_create ( ulint  n,
mem_heap_t heap 
)

Creates an update vector object.

Returns
own: update vector object
Parameters
nin: number of fields
heapin: heap from which memory allocated
UNIV_INLINE void upd_field_set_field_no ( upd_field_t upd_field,
ulint  field_no,
dict_index_t index,
trx_t trx 
)

Sets an index field number to be updated by an update vector field.

Parameters
upd_fieldin: update vector field
field_noin: field number in a clustered index
indexin: index
trxin: transaction
UNIV_INLINE const upd_field_t* upd_get_field_by_field_no ( const upd_t update,
ulint  no 
)

Returns a field of an update vector by field_no.

Returns
update vector field, or NULL
Parameters
updatein: update vector
noin: field_no
UNIV_INLINE ulint upd_get_n_fields ( const upd_t update)

Returns the number of fields in the update vector == number of columns to be updated by an update vector.

Returns
number of fields
Parameters
updatein: update vector
UNIV_INLINE upd_field_t* upd_get_nth_field ( const upd_t update,
ulint  n 
)

Returns the nth field of an update vector.

Returns
update vector field
Parameters
updatein: update vector
nin: field position in update vector