Bug #53096 Disconnection is slow when using non-persistent mysql connections
Submitted: 23 Apr 2010 7:32 Modified: 13 Aug 2012 16:18
Reporter: Magnus Blåudd Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Locking Severity:S5 (Performance)
Version:5.1.44 OS:Any
Assigned to: CPU Architecture:Any
Triage: Triaged: D3 (Medium) / R4 (High) / E4 (High)

[23 Apr 2010 7:32] Magnus Blåudd
Description:
Bug#48832 clearly point out that network I/O are being done while holding global mutexes in MySQL Server when using a networked storage engine, this is severly impacting the scalability of MySQL Server when using non persistent connections(which are quite common).

That bug has now been fixed in MySQL Cluster 7.1.4 with a minimal patch but we also need to design a long term solution for this and get it into a future version of MySQL Server.

How to repeat:
See test program attached to bug#48832

Suggested fix:
Move the network I/O out of global lock.
[29 Sep 2010 8:17] Konstantin Osipov
WL#3983.
Note, that the impact of this bug is much lower in 5.5, but keeping open until 3983 is fully closed, since there still may be cases when we try to do network I/O under a mutex (see closefrm()).
[29 Sep 2010 8:18] Konstantin Osipov
Setting high R/E values as the bug is bound to a worklog task.
[13 Aug 2012 16:18] Paul Dubois
Noted in 5.6.6 changelog.

If the server held a global mutex while doing network I/O, client
disconnections could be slow.