Skip to content

v6.3.0

Latest

Choose a tag to compare

@romanbalayan romanbalayan released this 28 Jan 04:24

Based from node-oracledb v6.3.0

v6.3.0 Release Notes

Common Changes

  1. Added a warning property to the result object for database warnings (such as PL/SQL compilation warnings) that are generated by calls to connection.execute().
  2. Added a connection.warning property for warnings (such as the password being in the grace period) that are generated during connection.
  3. VARCHAR2 and LOB columns which contain JSON, and have the “IS JSON” check constraint enabled, can now be fetched in the same way as columns of type JSON. In node-oracledb Thick mode this requires Oracle Client 19 or higher. Applications can get this new fetch behaviour by setting the new oracledb property oracledb.future.oldJsonColumnAsObj to true. The default value for this property is false which retains the existing fetch behaviour. In a future version, the new fetch behaviour will become default and setting this property will no longer be needed.
  4. Added constant oracledb.DB_TYPE_XMLTYPE to represent data of type SYS.XMLTYPE in metadata fetchType and dbType attributes. Previously the constant used was oracledb.DB_TYPE_LONG in Thick mode and oracledb.DB_TYPE_OBJECT in Thin mode.
  5. Added support for using the Azure and Oracle Cloud Infrastructure (OCI) Software Development Kits (SDKs) to generate authentication tokens.
  6. Added new connection properties connection.dbDomain, connection.dbName, connection.maxOpenCursors, connection.serviceName and connection.transactionInProgress that provide the database domain name, database instance name, maximum number of cursors that can be opened per connection, database service name and status of any ongoing transactions on the connection respectively.
  7. Added new extended metadata information attributes annotations, domainName, domainSchema and isJson for a fetched column.
  8. Added support for using an unformatted private key when the connection token callback is invoked due to expiry of an Identity Access Management (IAM) token after successful pool creation and connection establishment.
  9. Added new environment variable NODE_ORACLEDB_CLIENT_LIB_DIR to set an optional Oracle Client library path for the files in the examples directory on Windows and macOS Intel platforms, when using node-oracledb Thick mode.
  10. Added functionality to create and drop user schemas for Advanced Queuing (AQ) sample files in the examples directory. Users can now simply run the AQ samples using Node.js without requiring any external setup of the AQ user schema, queues and tables.

Thin Mode Changes

  1. Added support for fetching SYS.XMLTYPE data as strings. Note that unlike in Thick mode, fetching longer values does not require using XMLTYPE.GETCLOBVAL().
  2. Fixed bug in parsing SQL statements containing multi-line comments with multiple asterisks before the closing slash. Issue #1625.
  3. Fixed bug that caused an ‘ORA-03120’ exception to be thrown when a string whose size is greater than “database initialization parameter”, MAX_STRING_SIZE is bound to a PL/SQL function.
  4. Fixed bug that caused an ‘ORA-00600’ exception to be thrown with DbObject Class objects binding that have attributes whose values exceed 252 bytes in length. Issue #1616.
  5. Improved overall pool connection creation time by caching information during the first connection establishment.
  6. Internal changes to improve protocol handling between the database and the client.

Thick Mode Changes

  1. Fixed bug that causes an ‘NJS-136’ exception to be thrown when a proxy user is used for external authentication. Issue #1628.
  2. Fixed bug resulting in a segfault on some platforms when using two-phase commit. (ODPI-C change).