From 88780b03b916e98ad9116f1db0c380078ebc78af Mon Sep 17 00:00:00 2001 From: Davi Arnaut Date: Thu, 30 Jul 2009 17:52:42 -0300 Subject: [PATCH] Bug#43435: LOCK_open does not use MY_MUTEX_INIT_FAST Initialize LOCK_open as a adapative mutex on platforms where the PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP macro is available. The flag indicates that a thread should spin (busy wait) for some time on a locked adaptive mutex before blocking (sleeping). It's intended to to alleviate performance problems due to LOCK_open being a highly contended mutex. sql/mysqld.cc: Initialize LOCK_open as a adapative mutex. --- sql/mysqld.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql/mysqld.cc b/sql/mysqld.cc index 3a3e7e6d348..49729b5eaea 100644 --- a/sql/mysqld.cc +++ b/sql/mysqld.cc @@ -3519,7 +3519,7 @@ static int init_thread_environment() (void) pthread_mutex_init(&LOCK_mysql_create_db,MY_MUTEX_INIT_SLOW); (void) pthread_mutex_init(&LOCK_lock_db,MY_MUTEX_INIT_SLOW); (void) pthread_mutex_init(&LOCK_Acl,MY_MUTEX_INIT_SLOW); - (void) pthread_mutex_init(&LOCK_open, NULL); + (void) pthread_mutex_init(&LOCK_open, MY_MUTEX_INIT_FAST); (void) pthread_mutex_init(&LOCK_thread_count,MY_MUTEX_INIT_FAST); (void) pthread_mutex_init(&LOCK_mapped_file,MY_MUTEX_INIT_SLOW); (void) pthread_mutex_init(&LOCK_status,MY_MUTEX_INIT_FAST);