mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 20:12:31 +01:00
moved RAND initialization from mysqld.cc to sql_class.cc:THD::THD()
This commit is contained in:
parent
a1517908c1
commit
4c9b595c6b
2 changed files with 16 additions and 10 deletions
|
@ -249,7 +249,7 @@ extern int init_master_info(MASTER_INFO* mi);
|
|||
// and are treated as aliases for each other
|
||||
|
||||
static bool kill_in_progress=FALSE;
|
||||
static struct rand_struct sql_rand;
|
||||
struct rand_struct sql_rand; // used by sql_class.cc:THD::THD()
|
||||
static int cleanup_done;
|
||||
static char **defaults_argv,time_zone[30];
|
||||
static const char *default_table_type_name;
|
||||
|
@ -2257,15 +2257,7 @@ static void create_new_thread(THD *thd)
|
|||
for (uint i=0; i < 8 ; i++) // Generate password teststring
|
||||
thd->scramble[i]= (char) (rnd(&sql_rand)*94+33);
|
||||
thd->scramble[8]=0;
|
||||
/*
|
||||
We need good random number initialization for new thread
|
||||
Just coping global one will not work
|
||||
*/
|
||||
{
|
||||
ulong tmp=(ulong) (rnd(&sql_rand) * 3000000);
|
||||
randominit(&(thd->rand), tmp + (ulong) start_time,
|
||||
tmp + (ulong) thread_id);
|
||||
}
|
||||
|
||||
thd->real_id=pthread_self(); // Keep purify happy
|
||||
|
||||
/* Start a new thread to handle connection */
|
||||
|
|
|
@ -35,6 +35,8 @@
|
|||
#include <io.h>
|
||||
#endif
|
||||
|
||||
extern struct rand_struct sql_rand;
|
||||
|
||||
/*****************************************************************************
|
||||
** Instansiate templates
|
||||
*****************************************************************************/
|
||||
|
@ -147,6 +149,18 @@ THD::THD():user_time(0),fatal_error(0),last_insert_id_used(0),
|
|||
transaction.trans_log.end_of_file= max_binlog_cache_size;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
We need good random number initialization for new thread
|
||||
Just coping global one will not work
|
||||
*/
|
||||
{
|
||||
pthread_mutex_lock(&LOCK_thread_count);
|
||||
ulong tmp=(ulong) (rnd(&sql_rand) * 3000000);
|
||||
randominit(&rand, tmp + (ulong) start_time,
|
||||
tmp + (ulong) thread_id);
|
||||
pthread_mutex_unlock(&LOCK_thread_count);
|
||||
}
|
||||
}
|
||||
|
||||
/* Do operations that may take a long time */
|
||||
|
|
Loading…
Reference in a new issue