![]()  | 
  
    MySQL 8.4.7
    
   Source Code Documentation 
   | 
 
#include <clone_protocol_service.h>
Public Attributes | |
| void(* | mysql_clone_start_statement )(THD *&thd, unsigned int thread_key, unsigned int statement_key) | 
| Start and set session and statement key form current thread.  More... | |
| void(* | mysql_clone_finish_statement )(THD *thd) | 
| Finish statement and session.  More... | |
| int(* | mysql_clone_get_charsets )(THD *thd, Mysql_Clone_Values &char_sets) | 
| Get all character set and collations.  More... | |
| int(* | mysql_clone_validate_charsets )(THD *thd, Mysql_Clone_Values &char_sets) | 
| Check if all characters sets are supported by server.  More... | |
| int(* | mysql_clone_get_configs )(THD *thd, Mysql_Clone_Key_Values &configs) | 
| Get system configuration parameter values.  More... | |
| int(* | mysql_clone_validate_configs )(THD *thd, Mysql_Clone_Key_Values &configs) | 
| Check if configuration parameter values match.  More... | |
| MYSQL *(* | mysql_clone_connect )(THD *thd, const char *host, uint32_t port, const char *user, const char *passwd, mysql_clone_ssl_context *ssl_ctx, MYSQL_SOCKET *socket) | 
| Connect to a remote server and switch to clone protocol.  More... | |
| int(* | mysql_clone_send_command )(THD *thd, MYSQL *connection, bool set_active, unsigned char command, unsigned char *com_buffer, size_t buffer_length) | 
| Execute clone command on remote server.  More... | |
| int(* | mysql_clone_get_response )(THD *thd, MYSQL *connection, bool set_active, uint32_t timeout, unsigned char **packet, size_t *length, size_t *net_length) | 
| Get response from remote server.  More... | |
| int(* | mysql_clone_kill )(MYSQL *connection, MYSQL *kill_connection) | 
| Kill a remote connection.  More... | |
| void(* | mysql_clone_disconnect )(THD *thd, MYSQL *connection, bool is_fatal, bool clear_error) | 
| Disconnect from a remote server.  More... | |
| void(* | mysql_clone_get_error )(THD *thd, uint32_t *err_num, const char **err_mesg) | 
| Get error number and message.  More... | |
| int(* | mysql_clone_get_command )(THD *thd, unsigned char *command, unsigned char **com_buffer, size_t *buffer_length) | 
| Get command from client.  More... | |
| int(* | mysql_clone_send_response )(THD *thd, bool secure, unsigned char *packet, size_t length) | 
| Send response to client.  More... | |
| int(* | mysql_clone_send_error )(THD *thd, unsigned char err_cmd, bool is_fatal) | 
| Send error to client.  More... | |
| MYSQL *(* s_mysql_clone_protocol::mysql_clone_connect) (THD *thd, const char *host, uint32_t port, const char *user, const char *passwd, mysql_clone_ssl_context *ssl_ctx, MYSQL_SOCKET *socket) | 
Connect to a remote server and switch to clone protocol.
| [in,out] | thd | server session THD | 
| [in] | host | host name to connect to | 
| [in] | port | port number to connect to | 
| [in] | user | user name on remote host | 
| [in] | passwd | password for the user | 
| [in] | ssl_ctx | client ssl context | 
| [out] | socket | Network socket for the connection | 
| void(* s_mysql_clone_protocol::mysql_clone_disconnect) (THD *thd, MYSQL *connection, bool is_fatal, bool clear_error) | 
Disconnect from a remote server.
| [in,out] | thd | local session THD | 
| [in,out] | connection | connection object | 
| [in] | is_fatal | if closing after fatal error | 
| [in] | clear_error | clear any earlier error in session | 
| void(* s_mysql_clone_protocol::mysql_clone_finish_statement) (THD *thd) | 
Finish statement and session.
| [in,out] | thd | server session THD | 
| int(* s_mysql_clone_protocol::mysql_clone_get_charsets) (THD *thd, Mysql_Clone_Values &char_sets) | 
Get all character set and collations.
| [in,out] | thd | server session THD | 
| [out] | char_sets | all character set collations | 
| int(* s_mysql_clone_protocol::mysql_clone_get_command) (THD *thd, unsigned char *command, unsigned char **com_buffer, size_t *buffer_length) | 
Get command from client.
| [in,out] | thd | server session THD | 
| [out] | command | remote command | 
| [out] | com_buffer | data following command | 
| [out] | buffer_length | data length | 
| int(* s_mysql_clone_protocol::mysql_clone_get_configs) (THD *thd, Mysql_Clone_Key_Values &configs) | 
Get system configuration parameter values.
| [in,out] | thd | server session THD | 
| [in,out] | configs | a list of configuration key value pair keys are input and values are output | 
| void(* s_mysql_clone_protocol::mysql_clone_get_error) (THD *thd, uint32_t *err_num, const char **err_mesg) | 
Get error number and message.
| [in,out] | thd | local session THD | 
| [out] | err_num | error number | 
| [out] | err_mesg | error message text | 
| int(* s_mysql_clone_protocol::mysql_clone_get_response) (THD *thd, MYSQL *connection, bool set_active, uint32_t timeout, unsigned char **packet, size_t *length, size_t *net_length) | 
Get response from remote server.
| [in,out] | thd | local session THD | 
| [in,out] | connection | connection object | 
| [in] | set_active | set socket active for current THD | 
| [in] | timeout | timeout in seconds | 
| [out] | packet | response packet | 
| [out] | length | packet length | 
| [out] | net_length | network data length for compressed data | 
Kill a remote connection.
| [in,out] | connection | connection object | 
| [in] | kill_connection | connection to kill | 
| int(* s_mysql_clone_protocol::mysql_clone_send_command) (THD *thd, MYSQL *connection, bool set_active, unsigned char command, unsigned char *com_buffer, size_t buffer_length) | 
Execute clone command on remote server.
| [in,out] | thd | local session THD | 
| [in,out] | connection | connection object | 
| [in] | set_active | set socket active for current THD | 
| [in] | command | remote command | 
| [in] | com_buffer | data following command | 
| [in] | buffer_length | data length | 
| int(* s_mysql_clone_protocol::mysql_clone_send_error) (THD *thd, unsigned char err_cmd, bool is_fatal) | 
Send error to client.
| [in,out] | thd | server session THD | 
| [in] | err_cmd | error response command | 
| [in] | is_fatal | if fatal error | 
| int(* s_mysql_clone_protocol::mysql_clone_send_response) (THD *thd, bool secure, unsigned char *packet, size_t length) | 
Send response to client.
| [in,out] | thd | server session THD | 
| [in] | secure | needs to be sent over secure connection | 
| [in] | packet | response packet | 
| [in] | length | packet length | 
| void(* s_mysql_clone_protocol::mysql_clone_start_statement) (THD *&thd, unsigned int thread_key, unsigned int statement_key) | 
Start and set session and statement key form current thread.
| [in,out] | thd | server session THD | 
| [in] | thread_key | PSI key for thread | 
| [in] | statement_key | PSI Key for statement | 
| int(* s_mysql_clone_protocol::mysql_clone_validate_charsets) (THD *thd, Mysql_Clone_Values &char_sets) | 
Check if all characters sets are supported by server.
| [in,out] | thd | server session THD | 
| [in] | char_sets | all character set collations to validate | 
| int(* s_mysql_clone_protocol::mysql_clone_validate_configs) (THD *thd, Mysql_Clone_Key_Values &configs) | 
Check if configuration parameter values match.
| [in,out] | thd | server session THD | 
| [in] | configs | a list of configuration key value pair |