Changes in this release

NuoDB Release 3.1 includes the following major changes:

Nuochk reports missing data

Nuochk no longer erroneously reports missing data for transactions that are waiting to be resolved based information from other SMs.

Trigger and temporary tables

Triggers for "Create Table" will no longer be triggered for temporary tables. A new trigger event 'Create Temporary Table' is now available for these. (7729)

Table materialization and windows function

Enable derived table materialization when they include window functions, but only if the window function is deterministic. (7888)

Result of evaluating and DEFAULT expression

Ensure that the result of evaluating the supplied DEFAULT expression matches the type of the column it applies to.

New column in SYSTEM.OPENRESULTS table

A new column called SQLSTRING has been added to the SYSTEM.OPENRESULTS table. The new column contains the SQL statement which generated the result set. (7880)

Malformed column names

Prevent malformed column names, default values and check constraints from being created in the database. (7827)

Runtime SQL errors and stack trace

Runtime SQL errors have been enhanced with stack trace and line number information. (7522)

Improved syncing performance

Improved syncing performance for database with a large number of tables (e.g. 10s of thousands) (7620).

Improve TE memory utilization

Improve TE memory utilization for GROUP BY and aggregate queries. (7504)


Add a new EXECUTIONSTACK column to the SYSTEM.CONNECTIONS and  SYSTEM.LOCALCONNECTIONS tables that shows the current execution stack of each connection.

Restart non-running Transaction Engines

Allow the 'incremental' flag in the NuoDB Manager 'restart' command to restart non-running Transaction Engines and/or Storage Managers. Storage Managers will be restarted if all of the Storage Groups served by that Storage Manager are already running, even if some non-running archives are unreachable. In order to put any non-running Storage Groups into service, all archives must be reachable.

REPLICATE to return NULL if the count parameter is negative

Corrected behavior of REPLICATE to return NULL if the count parameter is negative. Also, the output string is truncated to 1048576 characters. (8141)

Handling possible update and join errors

Generate an error if the same record would be updated multiple times in a Join possibly creating non-deterministic results.

Data Type Conversion

Previously, NuoDB's type conversion was fairly promiscuous (similar to MySQL). In this release, the data type conversion is more strict (similar to Oracle and SQL Server). Refer to the "Data Type Conversion" user documentation for more details.


A new column showing the Node ID has been added to the SYSTEM.OPENRESULTS pseudo table.

Count queries

Improved performance for count queries.

New timeout configuration

Added a socket connection timeout of 2 seconds between Brokers and Agents. This augments the existing socket read timeout capabilities. This is required to ensure correct Broker and Agent peering after a network outage. This was added mainly to address long network timeouts in AWS. (8715)


See also: Resolved Issues and Known Issues.