Mess with innodb_thread_concurrency

In MySQL 5.0.19 the meaning of innodb_thread_concurrency variable was changed (yeah, again).
Now innodb_thread_concurrency=0 means unlimitied count of concurrent threads inside InnoDB. It’s logical, but there was long way. In MySQL versions below 5.0.8 for unlimited threads you had to set innodb_thread_concurrency over 500 (and default value for innodb_thread_concurrency was 8 ).
Starting with MySQL 5.0.8, the default value is 20, and concurrency checking will be disabled if the setting is greater than or equal to 20. But due to different bugs, in 5.0.19 the default value is 8 again, and 0 disables concurrency checking.
So if you used innodb_thread_concurrency over 500 (or default value in 5.0.8-5.0.18), don’t forget to change it to 0 in new versions, otherwise you can experience leaps of performance.

Share this post