2020-06-02 16:11:59 -04:00
|
|
|
# connection_pool Changelog
|
2015-04-10 11:34:55 -04:00
|
|
|
|
2020-12-03 17:36:34 -05:00
|
|
|
HEAD
|
|
|
|
------
|
|
|
|
|
|
|
|
- Add `then` as a way to use a pool or a bare connection with the
|
|
|
|
same code path [#138]
|
|
|
|
|
2020-06-02 16:11:59 -04:00
|
|
|
2.2.3
|
2019-01-08 15:40:04 -05:00
|
|
|
------
|
|
|
|
|
2020-06-02 16:11:59 -04:00
|
|
|
- Pool now throws `ConnectionPool::TimeoutError` on timeout. [#130]
|
2019-01-08 15:40:04 -05:00
|
|
|
- Use monotonic clock present in all modern Rubies [Tero Tasanen, #109]
|
|
|
|
- Remove code hacks necessary for JRuby 1.7
|
2019-03-01 10:43:49 -05:00
|
|
|
- Expose wrapped pool from ConnectionPool::Wrapper [Thomas Lecavelier, #113]
|
2019-01-08 15:40:04 -05:00
|
|
|
|
2018-05-24 13:33:08 -04:00
|
|
|
2.2.2
|
2017-08-08 14:05:26 -04:00
|
|
|
------
|
|
|
|
|
|
|
|
- Add pool `size` and `available` accessors for metrics and monitoring
|
|
|
|
purposes [#97, robholland]
|
|
|
|
|
2016-11-12 10:27:47 -05:00
|
|
|
2.2.1
|
|
|
|
------
|
|
|
|
|
|
|
|
- Allow CP::Wrapper to use an existing pool [#87, etiennebarrie]
|
|
|
|
- Use monotonic time for more accurate timeouts [#84, jdantonio]
|
|
|
|
|
2015-04-10 14:22:26 -04:00
|
|
|
2.2.0
|
2015-04-10 11:34:55 -04:00
|
|
|
------
|
|
|
|
|
|
|
|
- Rollback `Timeout` handling introduced in 2.1.1 and 2.1.2. It seems
|
2015-04-10 14:22:26 -04:00
|
|
|
impossible to safely work around the issue. Please never, ever use
|
|
|
|
`Timeout.timeout` in your code or you will see rare but mysterious bugs. [#75]
|
2015-04-10 11:34:55 -04:00
|
|
|
|
2015-03-19 11:42:11 -04:00
|
|
|
2.1.3
|
|
|
|
------
|
|
|
|
|
|
|
|
- Don't increment created count until connection is successfully
|
|
|
|
created. [mylesmegyesi, #73]
|
|
|
|
|
2015-03-02 16:21:34 -05:00
|
|
|
2.1.2
|
|
|
|
------
|
|
|
|
|
|
|
|
- The connection\_pool will now close any connections which respond to
|
|
|
|
`close` (Dalli) or `disconnect!` (Redis). This ensures discarded connections
|
|
|
|
from the fix in 2.1.1 are torn down ASAP and don't linger open.
|
|
|
|
|
|
|
|
|
2015-01-20 12:31:40 -05:00
|
|
|
2.1.1
|
|
|
|
------
|
|
|
|
|
|
|
|
- Work around a subtle race condition with code which uses `Timeout.timeout` and
|
|
|
|
checks out a connection within the timeout block. This might cause
|
|
|
|
connections to get into a bad state and raise very odd errors. [tamird, #67]
|
|
|
|
|
|
|
|
|
2014-11-17 19:10:21 -05:00
|
|
|
2.1.0
|
|
|
|
------
|
|
|
|
|
|
|
|
- Refactoring to better support connection pool subclasses [drbrain,
|
|
|
|
#55]
|
|
|
|
- `with` should return value of the last expression [#59]
|
|
|
|
|
|
|
|
|
2014-03-13 19:54:03 -04:00
|
|
|
2.0.0
|
|
|
|
-----
|
|
|
|
|
2014-03-13 23:31:25 -04:00
|
|
|
- The connection pool is now lazy. Connections are created as needed
|
|
|
|
and retained until the pool is shut down. [drbrain, #52]
|
2014-03-13 19:54:03 -04:00
|
|
|
|
2013-09-24 14:05:46 -04:00
|
|
|
1.2.0
|
2013-11-26 13:32:38 -05:00
|
|
|
-----
|
2013-09-24 14:05:46 -04:00
|
|
|
|
2013-11-26 13:32:38 -05:00
|
|
|
- Add `with(options)` and `checkout(options)`. [mattcamuto]
|
|
|
|
Allows the caller to override the pool timeout.
|
|
|
|
```ruby
|
|
|
|
@pool.with(:timeout => 2) do |conn|
|
|
|
|
end
|
|
|
|
```
|
2013-09-24 14:05:46 -04:00
|
|
|
|
2013-05-29 11:47:07 -04:00
|
|
|
1.1.0
|
2013-05-25 13:19:19 -04:00
|
|
|
-----
|
|
|
|
|
2013-05-29 11:47:07 -04:00
|
|
|
- New `#shutdown` method (simao)
|
2013-05-25 13:19:19 -04:00
|
|
|
|
|
|
|
This method accepts a block and calls the block for each
|
|
|
|
connection in the pool. After calling this method, trying to get a
|
2013-05-29 11:47:07 -04:00
|
|
|
connection from the pool raises `PoolShuttingDownError`.
|
2014-02-05 20:25:58 -05:00
|
|
|
|
2012-12-18 22:08:30 -05:00
|
|
|
1.0.0
|
|
|
|
-----
|
|
|
|
|
|
|
|
- `#with_connection` is now gone in favor of `#with`.
|
|
|
|
|
|
|
|
- We no longer pollute the top level namespace with our internal
|
|
|
|
`TimedStack` class.
|
|
|
|
|
2012-12-18 21:48:44 -05:00
|
|
|
0.9.3
|
|
|
|
--------
|
|
|
|
|
|
|
|
- `#with_connection` is now deprecated in favor of `#with`.
|
|
|
|
|
|
|
|
A warning will be issued in the 0.9 series and the method will be
|
|
|
|
removed in 1.0.
|
|
|
|
|
|
|
|
- We now reuse objects when possible.
|
|
|
|
|
|
|
|
This means that under no contention, the same object will be checked
|
|
|
|
out from the pool after subsequent calls to `ConnectionPool#with`.
|
|
|
|
|
|
|
|
This change should have no impact on end user performance. If
|
|
|
|
anything, it should be an improvement, depending on what objects you
|
|
|
|
are pooling.
|
|
|
|
|
2012-06-29 23:22:42 -04:00
|
|
|
0.9.2
|
|
|
|
--------
|
|
|
|
|
|
|
|
- Fix reentrant checkout leading to early checkin.
|
|
|
|
|
2012-04-01 22:24:45 -04:00
|
|
|
0.9.1
|
|
|
|
--------
|
|
|
|
|
|
|
|
- Fix invalid superclass in version.rb
|
|
|
|
|
2012-03-14 11:36:40 -04:00
|
|
|
0.9.0
|
|
|
|
--------
|
|
|
|
|
|
|
|
- Move method\_missing magic into ConnectionPool::Wrapper (djanowski)
|
|
|
|
- Remove BasicObject superclass (djanowski)
|
|
|
|
|
2011-09-19 17:29:59 -04:00
|
|
|
0.1.0
|
2011-09-19 13:29:31 -04:00
|
|
|
--------
|
|
|
|
|
2011-09-19 17:29:59 -04:00
|
|
|
- More precise timeouts and better error message
|
2011-09-19 13:29:31 -04:00
|
|
|
- ConnectionPool now subclasses BasicObject so `method_missing` is more effective.
|