MySQL 9.0.0
Source Code Documentation
|
Innodb Clone Interface. More...
Go to the source code of this file.
Classes | |
class | Clone_notify |
Clone Notification handler. More... | |
Functions | |
void | innodb_clone_get_capability (Ha_clone_flagset &flags) |
Get capability flags for clone operation. More... | |
int | innodb_clone_begin (handlerton *hton, THD *thd, const byte *&loc, uint &loc_len, uint &task_id, Ha_clone_type type, Ha_clone_mode mode) |
Begin copy from source database. More... | |
int | innodb_clone_copy (handlerton *hton, THD *thd, const byte *loc, uint loc_len, uint task_id, Ha_clone_cbk *cbk) |
Copy data from source database in chunks via callback. More... | |
int | innodb_clone_ack (handlerton *hton, THD *thd, const byte *loc, uint loc_len, uint task_id, int in_err, Ha_clone_cbk *cbk) |
Acknowledge data to source database. More... | |
int | innodb_clone_end (handlerton *hton, THD *thd, const byte *loc, uint loc_len, uint task_id, int in_err) |
End copy from source database. More... | |
int | innodb_clone_apply_begin (handlerton *hton, THD *thd, const byte *&loc, uint &loc_len, uint &task_id, Ha_clone_mode mode, const char *data_dir) |
Begin apply to destination database. More... | |
int | innodb_clone_apply (handlerton *hton, THD *thd, const byte *loc, uint loc_len, uint task_id, int in_err, Ha_clone_cbk *cbk) |
Apply data to destination database in chunks via callback. More... | |
int | innodb_clone_apply_end (handlerton *hton, THD *thd, const byte *loc, uint loc_len, uint task_id, int in_err) |
End apply to destination database. More... | |
void | clone_init_list_files () |
Check and delete any old list files. More... | |
int | clone_add_to_list_file (const char *list_file_name, const char *file_name) |
Add file name to clone list file for future replacement or rollback. More... | |
void | clone_remove_list_file (const char *file_name) |
Remove one of the clone list files. More... | |
void | clone_files_error () |
Revert back clone changes in case of an error. More... | |
bool | clone_check_recovery_crashpoint (bool is_cloned_db) |
Debug function to check and crash during recovery. More... | |
void | clone_files_recovery (bool finished) |
Change cloned file states during recovery. More... | |
void | clone_update_gtid_status (std::string >ids) |
Update cloned GTIDs to recovery status file. More... | |
dberr_t | clone_init () |
Initialize Clone system. More... | |
void | clone_free () |
Uninitialize Clone system. More... | |
bool | clone_check_active () |
Check if active clone is running. More... | |
bool | clone_check_provisioning () |
bool | fix_cloned_tables (THD *thd) |
Fix cloned non-Innodb tables during recovery. More... | |
Innodb Clone Interface.
int clone_add_to_list_file | ( | const char * | list_file_name, |
const char * | file_name | ||
) |
Add file name to clone list file for future replacement or rollback.
[in] | list_file_name | list file name where to add the file |
[in] | file_name | file name to add to the list |
bool clone_check_active | ( | ) |
Check if active clone is running.
bool clone_check_provisioning | ( | ) |
bool clone_check_recovery_crashpoint | ( | bool | is_cloned_db | ) |
Debug function to check and crash during recovery.
[in] | is_cloned_db | if cloned database recovery |
void clone_files_error | ( | ) |
Revert back clone changes in case of an error.
void clone_files_recovery | ( | bool | finished | ) |
Change cloned file states during recovery.
[in] | finished | if recovery is finishing |
void clone_free | ( | ) |
Uninitialize Clone system.
dberr_t clone_init | ( | ) |
Initialize Clone system.
void clone_init_list_files | ( | ) |
Check and delete any old list files.
void clone_remove_list_file | ( | const char * | file_name | ) |
Remove one of the clone list files.
[in] | file_name | list file name to delete |
void clone_update_gtid_status | ( | std::string & | gtids | ) |
Update cloned GTIDs to recovery status file.
[in] | gtids | cloned GTIDs |
bool fix_cloned_tables | ( | THD * | thd | ) |
Fix cloned non-Innodb tables during recovery.
[in,out] | thd | current THD |
int innodb_clone_ack | ( | handlerton * | hton, |
THD * | thd, | ||
const byte * | loc, | ||
uint | loc_len, | ||
uint | task_id, | ||
int | in_err, | ||
Ha_clone_cbk * | cbk | ||
) |
Acknowledge data to source database.
[in] | hton | handlerton for SE |
[in] | thd | server thread handle |
[in] | loc | locator |
[in] | loc_len | locator length in bytes |
[in] | task_id | task identifier |
[in] | in_err | inform any error occurred |
[in] | cbk | callback interface for receiving data |
int innodb_clone_apply | ( | handlerton * | hton, |
THD * | thd, | ||
const byte * | loc, | ||
uint | loc_len, | ||
uint | task_id, | ||
int | in_err, | ||
Ha_clone_cbk * | cbk | ||
) |
Apply data to destination database in chunks via callback.
[in] | hton | handlerton for SE |
[in] | thd | server thread handle |
[in] | loc | locator |
[in] | loc_len | locator length in bytes |
[in] | task_id | task identifier |
[in] | in_err | inform any error occurred |
[in] | cbk | callback interface for receiving data |
int innodb_clone_apply_begin | ( | handlerton * | hton, |
THD * | thd, | ||
const byte *& | loc, | ||
uint & | loc_len, | ||
uint & | task_id, | ||
Ha_clone_mode | mode, | ||
const char * | data_dir | ||
) |
Begin apply to destination database.
[in] | hton | handlerton for SE |
[in] | thd | server thread handle |
[in,out] | loc | locator |
[in,out] | loc_len | locator length |
[out] | task_id | task identifier |
[in] | mode | mode for starting clone |
[in] | data_dir | target data directory |
int innodb_clone_apply_end | ( | handlerton * | hton, |
THD * | thd, | ||
const byte * | loc, | ||
uint | loc_len, | ||
uint | task_id, | ||
int | in_err | ||
) |
End apply to destination database.
[in] | hton | handlerton for SE |
[in] | thd | server thread handle |
[in] | loc | locator |
[in] | loc_len | locator length in bytes |
[in] | task_id | task identifier |
[in] | in_err | error code when ending after error |
int innodb_clone_begin | ( | handlerton * | hton, |
THD * | thd, | ||
const byte *& | loc, | ||
uint & | loc_len, | ||
uint & | task_id, | ||
Ha_clone_type | type, | ||
Ha_clone_mode | mode | ||
) |
Begin copy from source database.
[in] | hton | handlerton for SE |
[in] | thd | server thread handle |
[in,out] | loc | locator |
[in,out] | loc_len | locator length |
[out] | task_id | task identifier |
[in] | type | clone type |
[in] | mode | mode for starting clone |
int innodb_clone_copy | ( | handlerton * | hton, |
THD * | thd, | ||
const byte * | loc, | ||
uint | loc_len, | ||
uint | task_id, | ||
Ha_clone_cbk * | cbk | ||
) |
Copy data from source database in chunks via callback.
[in] | hton | handlerton for SE |
[in] | thd | server thread handle |
[in] | loc | locator |
[in] | loc_len | locator length in bytes |
[in] | task_id | task identifier |
[in] | cbk | callback interface for sending data |
int innodb_clone_end | ( | handlerton * | hton, |
THD * | thd, | ||
const byte * | loc, | ||
uint | loc_len, | ||
uint | task_id, | ||
int | in_err | ||
) |
End copy from source database.
[in] | hton | handlerton for SE |
[in] | thd | server thread handle |
[in] | loc | locator |
[in] | loc_len | locator length in bytes |
[in] | task_id | task identifier |
[in] | in_err | error code when ending after error |
void innodb_clone_get_capability | ( | Ha_clone_flagset & | flags | ) |
Get capability flags for clone operation.
[out] | flags | capability flag |