mariadb/vio
Michael Widenius 615d51b650 Speed up connection time:
-Change my_rnd() slightly to make it safer if two threads use it at the same time.
-Avoid some sprintf and strmov in vio.
-Changed thread_count to be automically incremented (instead of under LOCK_thread_count).
-Thread cache now uses LOCK_thread_cache instead of LOCK_thread_count.
-Moved delete thd out from LOCK_thread_count.
-Save some mysql_cond_broadcast(&COND_thread_count) calls.
-Removed call to getsockname() during connect.
-Initialize random generator without locks.

Other things:
-Added thread_safe_decrement32() and thread_safe_increment32()
-Removed sql_rnd_with_mutex() and get_thread_running()

Thanks to Yoshinori Matsunobu for the benchmark of connection speed and to
Domas Mituzas for the inspiration for many of the fixes.
 

include/violite.h:
  Change desc to a string pointer
mysql-test/suite/perfschema/r/all_instances.result:
  Added new mutex
mysys/my_rnd.c:
  Change my_rnd() slightly to make it safer if two threads use it at the same time.
sql/event_scheduler.cc:
  Changed thread_count to be automically incremented
  Moved some safe things out from LOCK_thread_count.
  Simplify deleting of THD for running thread.
sql/mysqld.cc:
  Changed thread_count to be automically incremented
  Thread cache now uses LOCK_thread_cache instead of LOCK_thread_count
  Added delete_running_thd()
  Moved delete thd out from LOCK_thread_count
  More DBUG_ENTER
  Only call  mysql_cond_broadcast(&COND_thread_count) if thread_count is 0
  Removed call to getsockname() (old not anymore needed check)
sql/mysqld.h:
  Removed sql_rnd_with_mutex() (not needed anymore)
  Removed not used function get_thread_running()
  Added thread_safe_decrement32() and thread_safe_increment32()
  Simplified dec_thread_running() and inc_thread_running()
sql/sql_class.cc:
  Removed thd_lock_thread_count() and thd_unlock_thread_count()
  Initialize random generator without locks
sql/sql_insert.cc:
  Changed thread_count to be automically incremented
sql/sql_parse.cc:
  Changed thread_count to be automically incremented
vio/vio.c:
  Don't generate 'desc' with sprintf/strmov. Assign a pointer instead.
  (Good enough as this is just for debugging)
2013-03-20 01:46:35 +02:00
..
docs Fixed searching after ssl directories. 2002-09-05 16:17:08 +03:00
CMakeLists.txt Bug#473914: mysql_client_test fail with in debug compilaton on windows x64 2010-12-06 12:52:06 +01:00
test-ssl.c Updated/added copyright headers 2011-06-30 17:46:53 +02:00
test-sslclient.c Updated/added copyright headers 2011-06-30 17:46:53 +02:00
test-sslserver.c Updated/added copyright headers 2011-06-30 17:46:53 +02:00
vio.c Speed up connection time: 2013-03-20 01:46:35 +02:00
vio_priv.h Update copyright notices 2012-02-28 18:53:05 +01:00
viosocket.c mysql-5.5 merge 2012-06-14 20:05:31 +02:00
viossl.c Merge MWL#192: Non-blocking client library, into MariaDB 5.5. 2012-02-21 22:15:44 +01:00
viosslfactories.c MDEV-3901: Wrong SSL error messages 2012-12-01 16:33:22 +01:00
viotest-ssl.c Updated/added copyright headers 2011-06-30 17:46:53 +02:00
viotest-sslconnect.cc Updated/added copyright headers 2011-06-30 17:37:13 +02:00
viotest.cc Updated/added copyright headers 2011-06-30 17:37:13 +02:00