mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
983770aa6a
As documented in the bug report, the double checked locking pattern has inherent issues, and cannot guarantee correct initialization. This patch replaces the logic in init_available_charsets() with the use of pthread_once(3). A wrapper function, my_pthread_once(), is introduced and is used in lieu of direct calls to init_available_charsets(). Related defines MY_PTHREAD_ONCE_* are also introduced. For the Windows platform, the implementation in lp:sysbench is ported. For single-thread use, a simple define calls the function and sets the pthread_once control variable. Charset initialization is modified to use my_pthread_once(). |
||
---|---|---|
.. | ||
BUILD | ||
comp_err.def | ||
install_test_db.ncf | ||
libmysql.def | ||
libmysqlmain.c | ||
Makefile.am | ||
my_manage.c | ||
my_manage.h | ||
my_print_defaults.def | ||
myisam_ftdump.def | ||
myisamchk.def | ||
myisamlog.def | ||
myisampack.def | ||
mysql.def | ||
mysql.xdc | ||
mysql_client_test.def | ||
mysql_fix_privilege_tables.pl | ||
mysql_install_db.c | ||
mysql_install_db.def | ||
mysql_secure_installation.pl | ||
mysql_test_run.c | ||
mysql_test_run.def | ||
mysql_upgrade.def | ||
mysql_waitpid.def | ||
mysqladmin.def | ||
mysqlbinlog.def | ||
mysqlcheck.def | ||
mysqld.def | ||
mysqld_safe.c | ||
mysqld_safe.def | ||
mysqldump.def | ||
mysqlimport.def | ||
mysqlshow.def | ||
mysqlslap.def | ||
mysqltest.def | ||
perror.def | ||
replace.def | ||
resolve_stack_dump.def | ||
resolveip.def | ||
static_init_db.sql |