mirror of
https://github.com/MariaDB/server.git
synced 2025-08-05 13:16:09 +03:00
More work on interfaces
This commit is contained in:
@@ -59,6 +59,7 @@ bool thd_is_transaction_active(THD *thd);
|
|||||||
int thd_connection_has_data(THD *thd);
|
int thd_connection_has_data(THD *thd);
|
||||||
void thd_set_net_read_write(THD *thd, uint val);
|
void thd_set_net_read_write(THD *thd, uint val);
|
||||||
void thd_set_mysys_var(THD *thd, st_my_thread_var *mysys_var);
|
void thd_set_mysys_var(THD *thd, st_my_thread_var *mysys_var);
|
||||||
|
my_socket thd_get_fd(THD *thd);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
The thread pool must be able to execute commands using the connection
|
The thread pool must be able to execute commands using the connection
|
||||||
@@ -85,14 +86,16 @@ bool init_new_connection_handler_thread();
|
|||||||
/*
|
/*
|
||||||
thread_created is maintained by thread pool when activated since
|
thread_created is maintained by thread pool when activated since
|
||||||
user threads are created by the thread pool (and also special
|
user threads are created by the thread pool (and also special
|
||||||
threads to maintain the thread pool).
|
threads to maintain the thread pool). This is done through
|
||||||
|
inc_thread_created.
|
||||||
max_connections is needed to calculate the maximum number of threads
|
max_connections is needed to calculate the maximum number of threads
|
||||||
that is allowed to be started by the thread pool.
|
that is allowed to be started by the thread pool. The method
|
||||||
|
get_max_connections() gets reference to this variable.
|
||||||
|
connection_attrib is the thread attributes for connection threads,
|
||||||
|
the method get_connection_attrib provides a reference to these
|
||||||
|
attributes.
|
||||||
*/
|
*/
|
||||||
extern MYSQL_PLUGIN_IMPORT ulong thread_created;
|
pthread_attr_t *get_connection_attrib(void);
|
||||||
extern MYSQL_PLUGIN_IMPORT ulong max_connections;
|
void inc_thread_created(void);
|
||||||
extern MYSQL_PLUGIN_IMPORT mysql_cond_t COND_thread_count;
|
ulong get_max_connections(void);
|
||||||
extern MYSQL_PLUGIN_IMPORT pthread_attr_t connection_attrib;
|
|
||||||
/* extern MYSQL_PLUGIN_IMPORT I_List<THD> threads; */
|
|
||||||
extern MYSQL_PLUGIN_IMPORT PSI_thread_key key_thread_one_connection;
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -4895,6 +4895,14 @@ static bool read_init_file(char *file_name)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
Increment number of created threads
|
||||||
|
*/
|
||||||
|
void inc_thread_created(void)
|
||||||
|
{
|
||||||
|
thread_created++;
|
||||||
|
}
|
||||||
|
|
||||||
#ifndef EMBEDDED_LIBRARY
|
#ifndef EMBEDDED_LIBRARY
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@@ -433,6 +433,38 @@ void thd_set_mysys_var(THD *thd, st_my_thread_var *mysys_var)
|
|||||||
thd->set_mysys_var(mysys_var);
|
thd->set_mysys_var(mysys_var);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Get socket file descriptor for this connection
|
||||||
|
|
||||||
|
@param thd THD object
|
||||||
|
|
||||||
|
@retval Socket of the connection
|
||||||
|
*/
|
||||||
|
my_socket thd_get_fd(THD *thd)
|
||||||
|
{
|
||||||
|
return thd->net.vio->sd;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Get thread attributes for connection threads
|
||||||
|
|
||||||
|
@retval Reference to thread attribute for connection threads
|
||||||
|
*/
|
||||||
|
pthread_attr_t *get_connection_attrib(void)
|
||||||
|
{
|
||||||
|
return &connection_attrib;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
Get max number of connections
|
||||||
|
|
||||||
|
@retval Max number of connections for MySQL Server
|
||||||
|
*/
|
||||||
|
ulong get_max_connections(void)
|
||||||
|
{
|
||||||
|
return max_connections;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
The following functions form part of the C plugin API
|
The following functions form part of the C plugin API
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user