-
Jon Olav Hauglid authored
This patch moves thread-specific keycache variables from the mysys thread local storage struct to a separate struct managed by MyISAM. This reduces thread local storage usage and is a step towards implementing WL#6817 "Getting rid of mysql_thread_end() and thread local storage in libmysqlclient". The mysys TLS condition variable was used by both the keycache and thr_lock. The thr_lock usage is now handled by a new, separate condition variable owned by THD. The keycache condition variable is now managed by MyISAM code and Ha_data::ha_ptr is used to manage a reference to it.
Jon Olav Hauglid authoredThis patch moves thread-specific keycache variables from the mysys thread local storage struct to a separate struct managed by MyISAM. This reduces thread local storage usage and is a step towards implementing WL#6817 "Getting rid of mysql_thread_end() and thread local storage in libmysqlclient". The mysys TLS condition variable was used by both the keycache and thr_lock. The thr_lock usage is now handled by a new, separate condition variable owned by THD. The keycache condition variable is now managed by MyISAM code and Ha_data::ha_ptr is used to manage a reference to it.
Loading