The thread pool feature comprises these components:
A plugin library file implements a plugin for the thread pool code as well as several associated monitoring tables that provide information about thread pool operation.
For a detailed description of how the thread pool works, see Section 18.104.22.168, “Thread Pool Operation”.
INFORMATION_SCHEMAtables are named
TP_THREAD_GROUP_STATS. These tables provide information about thread pool operation. For more information, see Section 24.33, “INFORMATION_SCHEMA Thread Pool Tables”.
Several system variables are related to the thread pool. The
thread_handlingsystem variable has a value of
loaded-dynamicallywhen the server successfully loads the thread pool plugin.
The other related variables are implemented by the thread pool plugin; they are not available unless it is enabled:
thread_pool_algorithm: The concurrency algorithm to use for scheduling.
thread_pool_high_priority_connection: How to schedule statement execution for a session.
thread_pool_prio_kickup_timer: How long before the thread pool moves a statement awaiting execution from the low-priority queue to the high-priority queue.
thread_pool_max_unused_threads: How many sleeping threads to permit.
thread_pool_size: The number of thread groups in the thread pool. This is the most important parameter controlling thread pool performance.
thread_pool_stall_limit: The time before an executing statement is considered to be stalled.
If any variable implemented by the plugin is set to an illegal value at startup, plugin initialization fails and the plugin does not load.
For information about setting thread pool parameters, see Section 22.214.171.124, “Thread Pool Tuning”.
The Performance Schema has instruments that expose information about the thread pool and may be used to investigate operational performance. To identify them, use this query:
SELECT * FROM performance_schema.setup_instruments WHERE NAME LIKE '%thread_pool%';
For more information, see Chapter 25, MySQL Performance Schema.