26#ifndef ROUTER_SRC_MYSQL_REST_SERVICE_SRC_COLLECTOR_MYSQL_SQL_SESSION_H_ 
   27#define ROUTER_SRC_MYSQL_REST_SERVICE_SRC_COLLECTOR_MYSQL_SQL_SESSION_H_ 
   40  using Sqls = std::vector<std::string>;
 
   81               const std::string &username,
 
   87               unsigned long extra_client_flags = 0) 
override;
 
   91                   const std::string &db) 
override;
 
   92  void reset() 
override;
 
   95      uint64_t ps_id, std::vector<MYSQL_BIND> bind_parameters,
 
  101      const std::string &
query) 
override;  
 
  106  std::unique_ptr<MySQLSession::ResultRow> 
query_one(
 
  107      const std::string &
query,
 
  109  std::unique_ptr<MySQLSession::ResultRow> 
query_one(
 
  110      const std::string &
query) 
override;  
 
Definition: counted_mysql_session.h:38
 
~CountedMySQLSession() override
Definition: counted_mysql_session.cc:94
 
void prepare_remove(uint64_t ps_id) override
Definition: counted_mysql_session.cc:220
 
std::vector< std::string > Sqls
Definition: counted_mysql_session.h:40
 
virtual void connect(const ConnectionParameters &connection_params)
Definition: counted_mysql_session.cc:127
 
void query(const std::string &query, const ResultRowProcessor &processor, const FieldValidator &validator) override
Definition: counted_mysql_session.cc:230
 
virtual void connect_and_set_opts(const ConnectionParameters &connection_params, const Sqls &initial_sqls)
Definition: counted_mysql_session.cc:117
 
Sqls initial_sqls_
Definition: counted_mysql_session.h:115
 
virtual Sqls get_initial_sqls() const
Definition: counted_mysql_session.cc:113
 
virtual void execute_initial_sqls()
Definition: counted_mysql_session.cc:107
 
void execute(const std::string &query) override
Definition: counted_mysql_session.cc:225
 
uint64_t prepare(const std::string &query) override
Definition: counted_mysql_session.cc:206
 
void reset() override
Definition: counted_mysql_session.cc:204
 
std::unique_ptr< MySQLSession::ResultRow > query_one(const std::string &query, const FieldValidator &validator) override
Definition: counted_mysql_session.cc:237
 
ConnectionParameters connection_params_
Definition: counted_mysql_session.h:113
 
void prepare_execute_with_bind_parameters(uint64_t ps_id, std::vector< MYSQL_BIND > bind_parameters, const ResultRowProcessor &processor, const FieldValidator &validator, const OnResultSetEnd &on_resultset_end) override
Definition: counted_mysql_session.cc:211
 
bool reconnect_at_next_query_
Definition: counted_mysql_session.h:114
 
virtual void allow_failure_at_next_query()
Definition: counted_mysql_session.cc:98
 
virtual ConnectionParameters get_connection_parameters() const
Definition: counted_mysql_session.cc:103
 
void change_user(const std::string &user, const mysql_harness::SecureString &password, const std::string &db) override
Definition: counted_mysql_session.cc:194
 
CountedMySQLSession()
Definition: counted_mysql_session.cc:90
 
Definition: destination.h:95
 
Definition: destination.h:40
 
Null-terminated string which is securely wiped on destruction.
Definition: secure_string.h:59
 
Definition: mysql_session.h:157
 
std::function< void(unsigned, MYSQL_FIELD *)> FieldValidator
Definition: mysql_session.h:166
 
std::function< bool(const ResultRow &)> ResultRowProcessor
Definition: mysql_session.h:164
 
unsigned int port
Definition: mysql_session.h:526
 
int connect_timeout() const
Definition: mysql_session.cc:337
 
std::function< void()> OnResultSetEnd
Definition: mysql_session.h:167
 
std::string default_schema
Definition: mysql_session.h:528
 
std::string host
Definition: mysql_session.h:525
 
static constexpr int kDefaultReadTimeout
Definition: mysql_session.h:160
 
std::string unix_socket
Definition: mysql_session.h:527
 
int read_timeout() const
Definition: mysql_session.cc:346
 
static constexpr int kDefaultConnectTimeout
Definition: mysql_session.h:159
 
mysql_ssl_mode
Definition: mysql.h:272
 
static char * password
Definition: mysql_secure_installation.cc:58
 
Definition: cache_manager.h:33
 
collector::CountedMySQLSession::ConnectionParameters ConnectionParameters
Definition: query_retry_on_ro.cc:38
 
Definition: counted_mysql_session.h:55
 
std::string username
Definition: counted_mysql_session.h:58
 
mysql_harness::Destination destination
Definition: counted_mysql_session.h:56
 
std::string default_schema
Definition: counted_mysql_session.h:60
 
mysql_harness::SecureString password
Definition: counted_mysql_session.h:59
 
int read_timeout
Definition: counted_mysql_session.h:62
 
int connect_timeout
Definition: counted_mysql_session.h:61
 
unsigned long extra_client_flags
Definition: counted_mysql_session.h:63
 
Definition: counted_mysql_session.h:51
 
std::string cert
Definition: counted_mysql_session.h:52
 
std::string key
Definition: counted_mysql_session.h:53
 
Definition: counted_mysql_session.h:42
 
std::string ssl_cipher
Definition: counted_mysql_session.h:45
 
std::string tls_version
Definition: counted_mysql_session.h:44
 
std::string crl
Definition: counted_mysql_session.h:48
 
std::string capath
Definition: counted_mysql_session.h:47
 
std::string crlpath
Definition: counted_mysql_session.h:49
 
std::string ca
Definition: counted_mysql_session.h:46
 
mysql_ssl_mode ssl_mode
Definition: counted_mysql_session.h:43
 
Definition: counted_mysql_session.h:41
 
struct collector::CountedMySQLSession::ConnectionParameters::SslCert ssl_cert
 
struct collector::CountedMySQLSession::ConnectionParameters::SslOptions ssl_opts
 
struct collector::CountedMySQLSession::ConnectionParameters::ConnOptions conn_opts