[openstack-dev] [all] DevStack switching from MySQL-python to PyMySQL

Sean Dague sean at dague.net
Thu Jun 18 19:53:16 UTC 2015

On 06/18/2015 03:47 PM, Mike Bayer wrote:
> On 6/18/15 1:28 PM, Matt Riedemann wrote:
>> It's not only neutron, I saw some pymysql failures in nova the other
>> day for 'too many connections' or some such related error.
> "too many connections" is an error raised by MySQL when more connections
> are attempting to connect than the max_connections setting.  It defaults
> to 100 but it is often set at 1024 in distributions.    An Openstack
> application that uses oslo.db will go through oslo.db's create_engine()
> routine which defaults the max number of connections per python process
> to 15, and when the process is idle, this drops to 5.
> Which means, there have to be over 60 python processes all hitting the
> DB at the max to get that error, if max_connections is at 1024.    Or
> the connection pool is totally broken (e.g. with eventlet monkeypatching
> perhaps), which would be a critical issue for me to fix.
> So I'd love to see how the "too many connections" error actually
> happens.  Please share whatever you have on that.

I believe the distro defaults in Ubuntu are the mysql defaults, which is
151 - https://dev.mysql.com/doc/refman/5.5/en/too-many-connections.html

If we're allowing 15 connections per python process, and the APIs are
running in a worker mode, which means 8 workers per API server, yes,
that's going to add up really quick.

Perhaps under these scenarios we need to raise this to 1024 in devstack?


Sean Dague

More information about the OpenStack-dev mailing list