| 1738 | |
| 1739 | |
| 1740 | static int init_thread_environment() |
| 1741 | { |
| 1742 | mysql_mutex_init(key_LOCK_thread_created, |
| 1743 | &LOCK_thread_created, MY_MUTEX_INIT_FAST); |
| 1744 | mysql_mutex_init(key_LOCK_thread_count, &LOCK_thread_count, MY_MUTEX_INIT_FAST); |
| 1745 | mysql_mutex_init(key_LOCK_status, &LOCK_status, MY_MUTEX_INIT_FAST); |
| 1746 | mysql_mutex_init(key_LOCK_thd_remove, |
| 1747 | &LOCK_thd_remove, MY_MUTEX_INIT_FAST); |
| 1748 | mysql_mutex_init(key_LOCK_delayed_insert, |
| 1749 | &LOCK_delayed_insert, MY_MUTEX_INIT_FAST); |
| 1750 | mysql_mutex_init(key_LOCK_delayed_status, |
| 1751 | &LOCK_delayed_status, MY_MUTEX_INIT_FAST); |
| 1752 | mysql_mutex_init(key_LOCK_delayed_create, |
| 1753 | &LOCK_delayed_create, MY_MUTEX_INIT_SLOW); |
| 1754 | mysql_mutex_init(key_LOCK_crypt, &LOCK_crypt, MY_MUTEX_INIT_FAST); |
| 1755 | mysql_mutex_init(key_LOCK_user_conn, &LOCK_user_conn, MY_MUTEX_INIT_FAST); |
| 1756 | mysql_mutex_init(key_LOCK_active_mi, &LOCK_active_mi, MY_MUTEX_INIT_FAST); |
| 1757 | mysql_mutex_init(key_LOCK_global_system_variables, |
| 1758 | &LOCK_global_system_variables, MY_MUTEX_INIT_FAST); |
| 1759 | mysql_rwlock_init(key_rwlock_LOCK_system_variables_hash, |
| 1760 | &LOCK_system_variables_hash); |
| 1761 | mysql_mutex_init(key_LOCK_prepared_stmt_count, |
| 1762 | &LOCK_prepared_stmt_count, MY_MUTEX_INIT_FAST); |
| 1763 | mysql_mutex_init(key_LOCK_sql_slave_skip_counter, |
| 1764 | &LOCK_sql_slave_skip_counter, MY_MUTEX_INIT_FAST); |
| 1765 | mysql_mutex_init(key_LOCK_slave_net_timeout, |
| 1766 | &LOCK_slave_net_timeout, MY_MUTEX_INIT_FAST); |
| 1767 | mysql_mutex_init(key_LOCK_error_messages, |
| 1768 | &LOCK_error_messages, MY_MUTEX_INIT_FAST); |
| 1769 | mysql_mutex_init(key_LOCK_uuid_generator, |
| 1770 | &LOCK_uuid_generator, MY_MUTEX_INIT_FAST); |
| 1771 | mysql_mutex_init(key_LOCK_sql_rand, |
| 1772 | &LOCK_sql_rand, MY_MUTEX_INIT_FAST); |
| 1773 | mysql_mutex_init(key_LOCK_connection_count, |
| 1774 | &LOCK_connection_count, MY_MUTEX_INIT_FAST); |
| 1775 | mysql_mutex_init(key_LOCK_log_throttle_qni, |
| 1776 | &LOCK_log_throttle_qni, MY_MUTEX_INIT_FAST); |
| 1777 | #ifdef HAVE_OPENSSL |
| 1778 | mysql_mutex_init(key_LOCK_des_key_file, |
| 1779 | &LOCK_des_key_file, MY_MUTEX_INIT_FAST); |
| 1780 | #ifndef HAVE_YASSL |
| 1781 | openssl_stdlocks= (openssl_lock_t*) OPENSSL_malloc(CRYPTO_num_locks() * |
| 1782 | sizeof(openssl_lock_t)); |
| 1783 | for (int i= 0; i < CRYPTO_num_locks(); ++i) |
| 1784 | mysql_rwlock_init(key_rwlock_openssl, &openssl_stdlocks[i].lock); |
| 1785 | CRYPTO_set_dynlock_create_callback(openssl_dynlock_create); |
| 1786 | CRYPTO_set_dynlock_destroy_callback(openssl_dynlock_destroy); |
| 1787 | CRYPTO_set_dynlock_lock_callback(openssl_lock); |
| 1788 | CRYPTO_set_locking_callback(openssl_lock_function); |
| 1789 | CRYPTO_set_id_callback(openssl_id_function); |
| 1790 | #endif |
| 1791 | #endif |
| 1792 | mysql_rwlock_init(key_rwlock_LOCK_sys_init_connect, &LOCK_sys_init_connect); |
| 1793 | mysql_rwlock_init(key_rwlock_LOCK_sys_init_slave, &LOCK_sys_init_slave); |
| 1794 | mysql_rwlock_init(key_rwlock_LOCK_grant, &LOCK_grant); |
| 1795 | mysql_rwlock_init(key_rwlock_LOCK_consistent_snapshot, |
| 1796 | &LOCK_consistent_snapshot); |
| 1797 | mysql_cond_init(key_COND_thread_count, &COND_thread_count, NULL); |
no test coverage detected