Changes in this Release

Where changes relate to a Zendesk issue, the associated Zendesk reference number is displayed. For example, (9566).

Although major fixes are documented in Resolved Issues, this Changes in this Release section may also include fixes.

Changes in NuoDB 3.4.2

This section provides an overview of the major changes included with NuoDB 3.4.2.

SQLSTATE Values

The SQLSTATE value for the TE shutdown was requested before the transaction successfully committed exception has been changed from 58000 to 08007. (9566)

For more information on SQLSTATE values, see SQL Error Codes.

JDBC Driver Error Handling

For SQLSTATE08007, the JDBC driver now throws SQLRecoverableException instead of SQLTransientConnectionException (which is thrown by all other SQLSTATE values starting with 08). For more information on SQLSTATE values, see SQL Error Codes.

NuoDB Manager

Performance for NuoDB Manager's diagnose command has been improved, allowing SQL to be executed concurrently with less impact than previously observed. In addition, data is now streamed directly to the admin process, removing the need to store the data on disk of the TE. For more information on using the diagnose command, see Diagnose.

Changes in NuoDB 3.4.1

This section provides an overview of the major changes included with NuoDB 3.4.1.

NuoDB SQL Changes

The NuoDB SQL (nuosql) command line tool now supports inline comments ('–') when used in interactive mode.

For information on using nuosql, see Using NuoDB SQL Command Line.

Performance Improvements

NuoDB Optimizer can now perform shallow table and index scans for queries using aggregate functions count and sum over constants. (9431)

Changes in NuoDB 3.4

This section provides an overview of the major changes included with NuoDB 3.4.

Transactional DDL

The introduction of Transactional DDL (see New Features) may impact behavior of existing DDL operations for current NuoDB customers. For example:

For details of changes relating to transactional DDL, contact NuoDB Support.

Performance Improvements

The performance of memory management capabilities introduced in NuoDB 3.2 has been improved.

Database Object ID Data Type

The internal object identifier data type has been changed from INTEGER to BIGINT. As a result, the data type for the OBJECTID column in the TABLES table, the ALLSYSTEMTABLES table, and the SEQUENCES table has been changed from INTEGER to BIGINT. Also, the data type for the SYSTEM_ID column in the SCHEMAS table has been changed from INTEGER to BIGINT. For more information on these tables, see TABLES System Table Description, ALLSYSTEMTABLES System Table Description, SEQUENCES System Table Description, and SCHEMAS System Table Description.

Privileges for REPLACE Statements

Previously, to use the REPLACE command, INSERT and UPDATE privileges were required for the target table. Now, INSERT, UPDATE and DELETE privileges are required.

Data Source Statement Caching

Since enabling statement caching in the NuoDB DataSource can result in statement timeouts, statement caching capabilities have been removed from the NuoDB DataSource.

Index Changes

The changes required to resolve issues with the ordering of timestamp values, and to support trailing spaces in indexes, may require certain indexes to be rebuilt in NuoDB 3.4. If an index contains columns of date or time date types, or if the column contain strings with trailing spaces, it will be necessary to rebuild indexes.

Transaction Commit Error Messages

Previously, log messages incorrectly implied that a transaction was not committed:

TE shutdown was requested before the transaction successfully committed
TE shutdown was requested before the transaction successfully prepared

In certain circumstances, it is possible that a transaction may have been committed after the TE shut down. As a result, error messages have been changed to display as follows:

TE shutdown while committing
TE shutdown while preparing

The state of the transaction needs to be validated by the application. For more information, see Behavior If Connection to a Database is Lost.

JDBC and Hibernate Drivers

The JDBC and Hibernate drivers are now shipped independently from the NuoDB database. As a result, these drivers have been removed from the NuoDB database installation package and are now available from the Maven repository. For more information, see NuoDB Drivers Available at Other Public Sites.