Chapter 9. Extending MySQL
MySQL Internals
This chapter describes a lot of things that you need to know when working on the MySQL code. If you plan to contribute to MySQL development, want to have access to the bleeding-edge, in-between-versions code, or just want to keep track of development, follow the instructions in Section 2.3.4. If you are interested in MySQL internals, you should also subscribe to our internals mailing list. This list is relatively low-traffic. For details on how to subscribe, please see Section 1.6.2.1. All developers at MySQL AB are on the internals list and we help other people who are working on the MySQL code. Feel free to use this list both to ask questions about the code and to send patches that you would like to contribute to the MySQL project!
MySQL Threads
The MySQL server creates the following threads:
The TCP/IP connection thread handles all connection requests and creates a new dedicated thread to handle the authentication and SQL query processing for each connection.
On Windows NT there is a named pipe handler thread that does the same work as the TCP/IP connection thread on named pipe connect requests.
The signal thread handles all signals. This thread also normally handles alarms and calls process_alarm( ) to force timeouts on connections that have been idle too long.
If mysqld is compiled with -DUSE_ALARM_THREAD, a dedicated thread that handles alarms is created. This is only used on some systems where there are problems with sigwait( ) or if ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access