We've pushed out a release of node-oracledb to GitHub and NPM.
Top feature: Connection Pool CacheThe node-oracledb driver connects Node.js to Oracle Database for fast and functional applications.
The changes in node-oracledb 1.11 are:
Added a connection pool cache feature allowing pools to be given a string alias at creation. This makes pools easier to use.
Pools are typically created in one file and later used in other files. Giving a pool a string alias allows these other modules to access the pool by knowing only its alias name.
When pools are created with
oracledb.createPool()
, the pool attributes can now optionally contain a newpoolAlias
string.var hrPoolPromise = oracledb.createPool({ poolAlias: 'pool1', users: 'hr', password: 'welcome', connectString: 'localhost/orcl' });
Pools can be retrieved from the cache using a new
oracledb.getPool()
method, and then used as before to get connections. Multiple pools, each with a different alias, can be used.Interestingly,
oracledb.getConnection()
has been enhanced to take a pool alias specifying which pool to return a connection from. This bypasses the need to calloracledb.getPool()
.And there's more! The first pool (in a normal code flow) created without a
poolAlias
attribute is given the alias "default". Connections can be retrieved from this pool by usingoracledb.getConnection()
without passing an alias at all. This means applications that create only a single pool can simply useoracledb.getConnection()
anywhere to get a connection from the pool.More information and examples are in the documentation. It is worth checking this since
oracledb.getConnection()
now has several different behaviors, depending on the use of aliases (and whether callbacks or promises are used).We'd recommend using aliases all the time if you create more than one pool - and want to access them via aliases. Using aliases is optional. Don't mix un-aliased and aliased pools unless you want to confuse yourself.
Improved the bootstrap error message when the node-oracledb binary cannot be loaded.
Fixed memory leaks with
DATE
andTIMESTAMP
bind values.Fixed external authentication which broke in 1.10.
Fixed metadata
scale
andprecision
values on AIX.A couple of other internal improvements are shown in the CHANGELOG.
Resources
Issues and questions about node-oracledb can be posted on GitHub. Your input helps us schedule work on the add-on. Drop us a line!
Node-oracledb installation instructions are here.
Node-oracledb API and user documentation is here.