Skip to content

v6.1.0

Compare
Choose a tag to compare
@romanbalayan romanbalayan released this 01 Oct 07:33
· 3 commits to master since this release

Based from node-oracledb v6.1.0

v6.1.0 Release Notes

Common Changes

  1. Added support for both formatted and un-formatted private keys as input for IAM Token-Based Authentication.
  2. Added new property connection.instanceName which provides the Oracle Database instance name associated with a connection. This returns the same value as the SQL expression sys_context('userenv', 'instance_name').
  3. Minor code refactoring.
  4. Test case and Documentation updates and improvements.

Thin Mode Changes

  1. Added support for an Oracle Database 23c feature that can improve the performance of connection creation by reducing the number of round trips required to create the second and subsequent connections to the same database.
  2. Added support for fetching RAW columns as strings using oracledb.fetchAsString = [ oracledb.DB_TYPE_RAW ]. Issue #1586.
  3. Added new sslAllowWeakDNMatch connection attribute in createPool() and getConnection() methods and support for SSL_WEAK_DN_MATCH (an Oracle Database 23c feature). If set, this enables sslServerDNMatch / SSL_SERVER_DN_MATCH to check the database server certificate (but not the listener) and enables the service name to be used for partial DN matching. The search order is: the host name, then the subject alternative name (SAN), and then the service name.
  4. Added support to include database error cause/action URLs (introduced from Oracle Database 23c onwards) for ORA error messages.
  5. Added network connection optimization for multiple database hosts. If a host is found to be unreachable during connection, the host is added to a cache (marked as ‘down’). Subsequent requests to get a connection will reorder the list of available hosts so that the hosts marked as down are at the end of the list.
  6. Fixed bug that throws unexpected ‘ORA-01002’ and ‘NJS-112’ errors when LOB columns are fetched after table recreation. Issue #1565.
  7. Fixed bug with oracledb.oracleClientVersion and connection.oracleServerVersionString. These attributes now return ‘undefined’ in Thin mode instead of throwing an error. Issue #1582.
  8. Fixed bug giving ‘Unexpected message type’ during connection authentication. Issue #1589.
  9. Fixed bug in handling unexpected pool growth that exceeds pool max limit due to improper handling of parallel connection requests. Issue #1591.
  10. Fixed bug to return proper error when an invalid database service name is configured in the database listener.
  11. Fixed bug when sslServerDNMatch is set and the connect string is in Easy Connect syntax, but a value for SSL_SERVER_DN_MATCH is not set in that connect string.
  12. Fixed bug in DN matching when both a remote and a local listener use the same certificate.
  13. Fixed bug with duplicate data for queries that exceed 2016 columns (only possible with Oracle Database 23c).

Thick Mode Changes

  1. Added msgId attribute in the message object passed onto the callback function registered during AQ subscription. The msgId attribute passed with the callback function can be compared with the msgId attribute returned by the dequeue function for proper validation of the returned message objects with message dequeue.
  2. Added support to return a message object from the queue.enqOne() and queue.enqMany() functions. This message object contains a msgId attribute identifying each message.
  3. Added support to enqueue and dequeue AQ messages as JSON.