Bug #79606 Add super_connection option
Submitted: 11 Dec 2015 16:06 Modified: 12 Feb 2018 8:08
Reporter: Zhenye Xie (OCA) Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Options Severity:S4 (Feature request)
Version:5.7 OS:Any
Assigned to: CPU Architecture:Any
Tags: Contribution

[11 Dec 2015 16:06] Zhenye Xie
Description:
Users with SUPER privileges can use an extra connections when connection count reaches max_connections.
But the number of the reserved connections can not be changed. In some cases, more reserved connections is required for maintenance or other reason.

How to repeat:
When connections is full, users with SUPER privileges can have more than one reserved connection and can change it dynamically.

Suggested fix:
Add an option super_connection to specify the reserved connections for SUPER users with default value 1.
[11 Dec 2015 16:08] Zhenye Xie
pull request:

https://github.com/mysql/mysql-server/pull/34
[14 Jan 2016 15:27] OCA Admin
Contribution submitted via Github - add super_connections option 
(*) Contribution by Zhenye Xie (Github xiezhenye, mysql-server/pull/34#issuecomment-169582234): I confirm the code being submitted is offered under the terms of the OCA, and that I am authorized to contribute it.

Contribution: git_patch_53410641.txt (text/plain), 3.21 KiB.

[12 Feb 2018 8:08] MySQL Verification Team
Hello Zhenye Xie,

Thank you for the report and contribution.

Thanks,
Umesh
[12 Feb 2018 15:26] Georgi Kodinov
Thank you for your reasonable feature request.
I believe this is not the only place the check needs to be amended though.
The actual check is done at the end of acl_authenticate() and the valid_connection_count() is used to implement it to observe the layering between the thread manager and the rest of the server code. 
We need to both allow more than max_connections + 1 to be created and we need to check properly that these were used for people with SUPER_ACL (or CONNECTION_ADMIN in 8.0). 
Due to our migration to dynamic privileges in 8.0 I believe a more generic name fo the variable is in order too. Something along the lines of reserved_privileged_connections or some such.