MySQL 8.0.40
Source Code Documentation
|
Meta data required by IMPORT. More...
Public Member Functions | |
row_import () 1 | |
~row_import () 1 | |
row_import destructor. More... | |
row_index_t * | get_index (const char *name) const 1 |
Find the index entry in in the indexes array. More... | |
ulint | get_n_rows (const char *name) const 1 |
Get the number of rows in the index. More... | |
ulint | find_col (const char *name) const 1 |
Find the ordinal value of the column name in the cfg table columns. More... | |
ulint | get_n_purge_failed (const char *name) const 1 |
Get the number of rows for which purge failed during the convert phase. More... | |
bool | requires_purge (const char *name) const 1 |
Check if the index is clean. More... | |
void | set_root_by_name () 1 |
Set the index root <space, pageno> using the index name. More... | |
dberr_t | set_root_by_heuristic () 1 |
Set the index root <space, pageno> using a heuristic. More... | |
dberr_t | match_index_columns (THD *thd, const dict_index_t *index) 1 |
Check if the index schema that was read from the .cfg file matches the in memory index definition. More... | |
dberr_t | match_col_default_values (THD *thd, const dd::Table *dd_table) 1 |
Check if the column default values of table schema that was read from the .cfg file matches the in memory column definition. More... | |
dberr_t | match_compression_type_option (THD *thd, const dd::Table *dd_table) 1 |
Check if the table schema that was read from the .cfg file matches the in memory table definition. More... | |
dberr_t | match_table_columns (THD *thd) 1 |
Check if the table schema that was read from the .cfg file matches the in memory table definition. More... | |
dberr_t | match_schema (THD *thd, const dd::Table *dd_table) 1 |
Check if the table (and index) schema that was read from the .cfg file matches the in memory table definition. More... | |
bool | has_row_versions () |
Check if table being imported has INSTANT ADD/DROP columns. More... | |
Public Attributes | |
dict_table_t * | m_table |
Table instance. More... | |
uint32_t | m_version |
Version of config file. More... | |
byte * | m_hostname |
Hostname where the tablespace was exported. More... | |
byte * | m_table_name |
Exporting instance table name. More... | |
mem_heap_t * | m_heap |
Memory heap for default value of instant columns. More... | |
uint64_t | m_autoinc |
Next autoinc value. More... | |
page_size_t | m_page_size |
Tablespace page size. More... | |
uint32_t | m_flags |
Table flags. More... | |
ulint | m_n_cols |
Number of columns in the meta-data file. More... | |
uint32_t | m_initial_column_count {0} |
uint32_t | m_current_column_count {0} |
uint32_t | m_total_column_count {0} |
uint32_t | m_n_instant_drop_cols {0} |
uint32_t | m_current_row_version {0} |
uint16_t | m_n_instant_cols |
Number of columns before first instant ADD COLUMN in the meta-data file. More... | |
uint32_t | m_n_instant_nullable |
dict_col_t * | m_cols |
Column data. More... | |
byte ** | m_col_names |
Column names, we store the column names separately because there is no field to store the value in dict_col_t. More... | |
ulint | m_n_indexes |
Number of indexes, including clustered index. More... | |
row_index_t * | m_indexes |
Index meta data. More... | |
bool | m_missing |
true if a .cfg file was found and was readable More... | |
bool | m_has_sdi |
true if tablespace has SDI More... | |
bool | m_cfp_missing |
true if a .cfp file was found and was readable More... | |
Compression::Type | m_compression_type {} |
Compression type in the meta-data file. More... | |
Encryption_metadata | m_encryption_metadata {} |
Encryption settings. More... | |
Private Member Functions | |
dberr_t | set_instant_info (THD *thd, const dd::Table *dd_table) 1 |
Set the instant ADD COLUMN information to the table. More... | |
dberr_t | set_instant_info_v2 (THD *thd, const dd::Table *dd_table) 1 |
Set the instant ADD/DROP COLUMN information to the table. More... | |
dberr_t | match_instant_metadata_in_target_table (THD *thd) |
Match INSTANT metadata of CFG file and target table when both source and target table has INSTANT columns. More... | |
dberr_t | adjust_instant_metadata_in_taregt_table (THD *thd, const dd::Table *dd_table) |
Update INSTANT metadata into target table when only source has INSTANT columns. More... | |
dberr_t | add_instant_dropped_columns (dict_table_t *target_table) |
Add INSTANT DROP columns to target table innodb cache. More... | |
Meta data required by IMPORT.
|
inline |
row_import::~row_import | ( | ) |
row_import destructor.
|
private |
Add INSTANT DROP columns to target table innodb cache.
[in] | target_table | target table in InnoDB cache. |
|
private |
Update INSTANT metadata into target table when only source has INSTANT columns.
[in] | thd | MySQL session |
[in,out] | dd_table | target table definition |
ulint row_import::find_col | ( | const char * | name | ) | const |
Find the ordinal value of the column name in the cfg table columns.
name | of column to look for. |
row_index_t * row_import::get_index | ( | const char * | name | ) | const |
Find the index entry in in the indexes array.
name | index name |
ulint row_import::get_n_purge_failed | ( | const char * | name | ) | const |
Get the number of rows for which purge failed during the convert phase.
Get the number of rows for which purge failed uding the convert phase.
name | index name |
ulint row_import::get_n_rows | ( | const char * | name | ) | const |
Get the number of rows in the index.
name | index name |
|
inline |
Check if table being imported has INSTANT ADD/DROP columns.
Check if the column default values of table schema that was read from the .cfg file matches the in memory column definition.
[in] | thd | MySQL session variable |
[in] | dd_table | dd::Table |
Check if the table schema that was read from the .cfg file matches the in memory table definition.
[in] | thd | MySQL session variable |
[in] | dd_table | dd::Table |
dberr_t row_import::match_index_columns | ( | THD * | thd, |
const dict_index_t * | index | ||
) |
Check if the index schema that was read from the .cfg file matches the in memory index definition.
Note: It will update row_import_t::m_srv_index to map the meta-data read from the .cfg file to the server index instance.
Match INSTANT metadata of CFG file and target table when both source and target table has INSTANT columns.
[in] | thd | MySQL session |
Check if the table (and index) schema that was read from the .cfg file matches the in memory table definition.
[in] | thd | MySQL session variable |
[in] | dd_table | dd::Table |
Check if the table schema that was read from the .cfg file matches the in memory table definition.
thd | MySQL session variable |
|
inline |
Check if the index is clean.
ie. no delete-marked records
name | index name |
Set the instant ADD COLUMN information to the table.
Set the instant ADD/DROP COLUMN information to the table.
[in] | thd | MySQL session |
[in,out] | dd_table | target table definition |
dberr_t row_import::set_root_by_heuristic | ( | ) |
Set the index root <space, pageno> using a heuristic.
Set the index root <space, pageno>, using a heuristic.
void row_import::set_root_by_name | ( | ) |
Set the index root <space, pageno> using the index name.
Set the index root <space, pageno>, using index name.
uint64_t row_import::m_autoinc |
Next autoinc value.
bool row_import::m_cfp_missing |
true if a .cfp file was found and was readable
byte** row_import::m_col_names |
Column names, we store the column names separately because there is no field to store the value in dict_col_t.
dict_col_t* row_import::m_cols |
Column data.
Compression::Type row_import::m_compression_type {} |
Compression type in the meta-data file.
uint32_t row_import::m_current_column_count {0} |
uint32_t row_import::m_current_row_version {0} |
Encryption_metadata row_import::m_encryption_metadata {} |
Encryption settings.
uint32_t row_import::m_flags |
Table flags.
bool row_import::m_has_sdi |
true if tablespace has SDI
mem_heap_t* row_import::m_heap |
Memory heap for default value of instant columns.
byte* row_import::m_hostname |
Hostname where the tablespace was exported.
row_index_t* row_import::m_indexes |
Index meta data.
uint32_t row_import::m_initial_column_count {0} |
bool row_import::m_missing |
true if a .cfg file was found and was readable
ulint row_import::m_n_cols |
Number of columns in the meta-data file.
ulint row_import::m_n_indexes |
Number of indexes, including clustered index.
uint16_t row_import::m_n_instant_cols |
Number of columns before first instant ADD COLUMN in the meta-data file.
uint32_t row_import::m_n_instant_drop_cols {0} |
uint32_t row_import::m_n_instant_nullable |
page_size_t row_import::m_page_size |
Tablespace page size.
dict_table_t* row_import::m_table |
Table instance.
byte* row_import::m_table_name |
Exporting instance table name.
uint32_t row_import::m_total_column_count {0} |
uint32_t row_import::m_version |
Version of config file.