PostgreSQL v6.0.0 Release Notes
-
๐ฅ Breaking Changes
- Remove
pg.pools
. There is still a reference kept to the pools created & tracked bypg.connect
but it has been renamed, is considered private, and should not be used. Accessing this API directly was uncommon and was supposed to be private but was incorrectly documented on the wiki. Therefore, it is a breaking change of an (unintentionally) public interface to remove it by renaming it & making it private. Eventuallypg.connect
itself will be deprecated in favor of instantiating pools directly vianew pg.Pool()
so this property should become completely moot at some point. In the mean time...check out the new features...
๐ New features
- ๐ Replace internal pooling code with pg-pool. This is the first step in eventually deprecating and removing the singleton
pg.connect
. The pg-pool constructor is exported from node-postgres atrequire('pg').Pool
. It provides a backwards compatible interface withpg.connect
as well as a promise based interface & additional niceties.
You can now create an instance of a pool and don't have to rely on the
pg
singleton for anything:var pg = require('pg') var pool = new pg.Pool() // your friendly neighborhood pool interface, without the singleton pool.connect(function(err, client, done) { // ... })
๐ Promise support & other goodness lives now in pg-pool.
Please read the readme at pg-pool for the full api.
- ๐ Included support for tcp keep alive. Enable it as follows:
var client = new Client({ keepAlive: true });
This should help with backends incorrectly considering idle clients to be dead and prematurely disconnecting them.
- Remove