MySQL  8.0.19
Source Code Documentation
upd_t Struct Reference

#include <row0upd.h>

Public Member Functions

void append (const upd_field_t &field)
 Append an update field to the end of array. More...
 
bool is_modified (const ulint field_no) const
 Determine if the given field_no is modified. More...
 
void reset ()
 Reset the update fields. More...
 
bool validate () const
 
bool is_partially_updated (ulint field_no) const
 Check if the given field number is partially updated. More...
 
upd_field_tget_field_by_field_no (ulint field_no, dict_index_t *index) const
 
const Binary_diff_vectorget_binary_diff_by_field_no (ulint field_no) const
 
std::ostream & print (std::ostream &out) const
 
std::ostream & print_puvect (std::ostream &out, upd_field_t *uf) const
 Print the partial update vector (puvect) of the given update field. More...
 

Static Public Member Functions

static size_t get_total_modified_bytes (const Binary_diff_vector &bdv)
 Calculate the total number of bytes modified in one BLOB. More...
 

Public Attributes

mem_heap_theap
 heap from which memory allocated More...
 
ulint info_bits
 new value of info bits to record; default is 0 More...
 
dtuple_told_vrow
 pointer to old row, used for virtual column update now More...
 
dict_table_ttable
 the table object More...
 
TABLEmysql_table
 the mysql table object More...
 
ulint n_fields
 number of update fields More...
 
upd_field_tfields
 array of update fields More...
 

Member Function Documentation

◆ append()

void upd_t::append ( const upd_field_t field)
inline

Append an update field to the end of array.

Parameters
[in]fieldan update field

◆ get_binary_diff_by_field_no()

const Binary_diff_vector * upd_t::get_binary_diff_by_field_no ( ulint  field_no) const

◆ get_field_by_field_no()

upd_field_t * upd_t::get_field_by_field_no ( ulint  field_no,
dict_index_t index 
) const

◆ get_total_modified_bytes()

static size_t upd_t::get_total_modified_bytes ( const Binary_diff_vector bdv)
inlinestatic

Calculate the total number of bytes modified in one BLOB.

Parameters
[in]bdvthe binary diff vector containing all the modifications to one BLOB.
Returns
the total modified bytes.

◆ is_modified()

bool upd_t::is_modified ( const ulint  field_no) const
inline

Determine if the given field_no is modified.

Returns
true if modified, false otherwise.

◆ is_partially_updated()

bool upd_t::is_partially_updated ( ulint  field_no) const

Check if the given field number is partially updated.

Parameters
[in]field_nothe field number.
Returns
true if partially updated, false otherwise.

◆ print()

std::ostream & upd_t::print ( std::ostream &  out) const

◆ print_puvect()

std::ostream & upd_t::print_puvect ( std::ostream &  out,
upd_field_t uf 
) const

Print the partial update vector (puvect) of the given update field.

Parameters
[in,out]outthe output stream
[in]ufthe updated field.
Returns
the output stream.

◆ reset()

void upd_t::reset ( )
inline

Reset the update fields.

◆ validate()

bool upd_t::validate ( ) const
inline

Member Data Documentation

◆ fields

upd_field_t* upd_t::fields

array of update fields

◆ heap

mem_heap_t* upd_t::heap

heap from which memory allocated

◆ info_bits

ulint upd_t::info_bits

new value of info bits to record; default is 0

◆ mysql_table

TABLE* upd_t::mysql_table

the mysql table object

◆ n_fields

ulint upd_t::n_fields

number of update fields

◆ old_vrow

dtuple_t* upd_t::old_vrow

pointer to old row, used for virtual column update now

◆ table

dict_table_t* upd_t::table

the table object


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