Re: [sqlalchemy] QueuePool negative overflow

2016-06-27 Thread Mike Bayer
On 06/27/2016 12:46 PM, davepuffin via sqlalchemy wrote: I've checked netstat and there are only 15 mysql connections (status is still reporting the same): Pool size: 20 Connections in pool: 19 Current Overflow: -36 Current Checked out connections: -35 On our other servers, the number of

Re: [sqlalchemy] QueuePool negative overflow

2016-06-27 Thread davepuffin via sqlalchemy
I've checked netstat and there are only 15 mysql connections (status is still reporting the same): Pool size: 20 Connections in pool: 19 Current Overflow: -36 Current Checked out connections: -35 On our other servers, the number of connections (from netstat) matches up with the pool status as

Re: [sqlalchemy] QueuePool negative overflow

2016-06-27 Thread Mike Bayer
Well it is possible QueuePool doesn't do the right thing under eventlet, though we use it a lot w/ eventlet in Openstack and I've tested it myself quite a bit. Have not peeked at this number, however. You'd need to produce for me a self contained test suite that illustrates this behavior

Re: [sqlalchemy] QueuePool negative overflow

2016-06-27 Thread 'Dave Puffin' via sqlalchemy
Thanks for the reply :) I think you're right in that it must be threading related somehow, but it looks like all the monkeypatching has been applied correctly. If I examine the locking object used in the pool I get: >>> type(engine.pool._overflow_lock) On Mon, Jun 27, 2016 at 4:21 PM, Mike

Re: [sqlalchemy] QueuePool negative overflow

2016-06-27 Thread Mike Bayer
On 06/27/2016 10:48 AM, davepuffin via sqlalchemy wrote: Hi QueuePool.status() is returning some odd looking negative values from one of our production applications. engine.pool.status() 'Pool size: 20 Connections in pool: 19 Current Overflow: -36 Current Checked out connections: -35' The

[sqlalchemy] QueuePool negative overflow

2016-06-27 Thread davepuffin via sqlalchemy
Hi QueuePool.status() is returning some odd looking negative values from one of our production applications. >>> engine.pool.status() 'Pool size: 20 Connections in pool: 19 Current Overflow: -36 Current Checked out connections: -35' The pool was initialised with: pool_size=20,