23#ifndef RPL_MYSQL_CONNECT
24#define RPL_MYSQL_CONNECT
Mysql client connection wrapper class to connect MySQL, execute SQL query and fetch query results.
Definition: rpl_mysql_connect.h:55
bool m_is_io_thread
Definition: rpl_mysql_connect.h:136
bool m_connected
Definition: rpl_mysql_connect.h:115
Mysql_connection(THD *thd, Master_info *mi, std::string host, uint port, std::string network_namespace, bool is_io_thread=false)
Mysql_connection class constructor.
Definition: rpl_mysql_connect.cc:30
bool safe_reconnect(THD *thd, Master_info *mi, bool suppress_warnings, std::string host, uint port)
To re-connect to mysql server.
Definition: rpl_mysql_connect.cc:93
std::string m_network_namespace
Definition: rpl_mysql_connect.h:133
bool is_connected()
Determine if its connected to mysql server.
Definition: rpl_mysql_connect.cc:59
bool safe_connect(THD *thd, Master_info *mi, std::string host, uint port, std::string network_namespace)
To connect to mysql server.
Definition: rpl_mysql_connect.cc:61
std::string m_host
Definition: rpl_mysql_connect.h:127
MYSQL_RES_TUPLE execute_query(std::string query) const
Execute given sql query on connected mysql server.
Definition: rpl_mysql_connect.cc:113
MYSQL * m_conn
Definition: rpl_mysql_connect.h:112
THD * m_thd
Definition: rpl_mysql_connect.h:121
~Mysql_connection()
Mysql_connection class destructor.
Definition: rpl_mysql_connect.cc:50
bool reconnect()
Re-connect to mysql server.
Definition: rpl_mysql_connect.cc:103
Master_info * m_mi
Definition: rpl_mysql_connect.h:124
uint m_port
Definition: rpl_mysql_connect.h:130
bool m_init
Definition: rpl_mysql_connect.h:118
MYSQL * get_mysql()
Get Mysql client connection object.
Definition: rpl_mysql_connect.h:96
For each client connection we create a separate thread with THD serving as a thread/connection descri...
Definition: sql_lexer_thd.h:35
static char * query
Definition: myisam_ftdump.cc:46
This file defines the client API to MySQL and also the ABI of the dynamically linked libmysqlclient.
const char * host
Definition: mysqladmin.cc:63
required string network_namespace
Definition: replication_asynchronous_connection_failover.proto:33
required uint64 port
Definition: replication_asynchronous_connection_failover.proto:32
std::vector< std::vector< std::string > > MYSQL_RES_VAL
result of executed query in rows<cols<value>> format where rows and cols both are std::vector and val...
Definition: rpl_mysql_connect.h:35
std::tuple< uint, std::vector< std::vector< std::string > > > MYSQL_RES_TUPLE
std::tuple<error number, result> where first element of tuple is function return value and determines...
Definition: rpl_mysql_connect.h:47