Changes in this release

Where changes are associated with reported issues, a Zendesk reference number is displayed, for example (8544).

Changes in NuoDB 3.2.2

This section provides information on major changes available in NuoDB 3.2.2.

Log Messages

Some agent.log messages have been enhanced to include additional information (if that information is available) about the nodes they refer to.

Previous message format:

No response for <N> seconds from process: <process id> 

New message format:

No response for <N> seconds from Node %s db=[%s] pid=%d id=%d req=%s (%s)

Previous message format:

unresponsive process reached maximum allowed delay: <process id> 

New message format:

unresponsive process reached maximum allowed delay: Node %s db=[%s] pid=%d id=%d req=%s (%s)

Previous message format:

cleaning up pid={0} with exit code={1}

New message format:

cleaning up pid={0} with exit code={1}: Node %s db=[%s] pid=%d id=%d req=%s (%s)

Previous message format:

node left: pid={0} not found

New message format:

node left: pid={0} not found: Node %s db=[%s] pid=%d id=%d req=%s (%s)

Troubleshooting Issues

To make diagnosing issues in the agent.log file easier for a multi-database NuoDB domain, the database name and node ID have been added to every message:

<timestamp> [<pid>] (<dbname> node <nodeid>) <message>

Where <nodeid> will be -1 until the node obtains an ID. For example:

2018-07-31T18:21:32.478-0400 [26705] (mydb node -1) Node state transition from Unknown to Running
2018-07-31T18:21:32.478-0400 [26705] (mydb node 1) Database formed: effective version 1048576 (3.2.1)		

Changes in NuoDB 3.2.1

This section provides information on major changes available in NuoDB 3.2.1.

NuoDB Check Exit Codes

Owing to a conflict with codes reserved by POSIX, NuoDB Check's exit codes have been reviewed. Codes 125, 126, and 127 have been replaced by 123, 124, and 125. For more information on NuoDB exit codes, see NuoDB Check.

System Property Update

The default value for the MIN_QUERY_WARN_TIME property has been changed from 900 seconds to 315,360,000 seconds. For more information on the MIN_QUERY_WARN_TIME property, see SQL System Properties.

Transaction Behavior During Deadlock

Where you have transactions in deadlock, you no longer have to manually cancel one of the transactions. A new system property allows for automatic handling of transaction behavior during a deadlock. For more information on the new ROLLBACK_DEADLOCK_VICTIM property, see SQL System Properties.

Changes in NuoDB 3.2

This section provides information on major changes available in NuoDB 3.2.

Partitioned Tables

When creating partitioned tables with unique indexes or primary keys, you must now ensure the partitioning key is included in all unique indexes and in the primary key (unless each index already contains a field guaranteed to be unique, for example via a GENERATED ALWAYS option). Otherwise, an error is returned when creating the table.

Data Types

General

Data type conversion has been expanded and is now performed on UPDATE and DELETE operations.

Integer types

Integer division now truncates to a whole number. For example, select 100 / 125 from dual; now returns 0 instead of .8.

Numeric types

The CEIL and FLOOR functions return the argument type if the argument type is not NUMERIC. If the argument type is NUMERIC, the CEIL and FLOOR functions return NUMERIC (precision + 1, 0). The ROUND function returns the same argument type as the first argument if the argument is not NUMERIC. If the argument type is NUMERIC, return NUMERIC (precision + 1, scale).

Date/Time types

An error message is now generated when you use invalid timestamp separators, for example '-' or '/'.

An error message is now generated when you attempt to create a date using an invalid timestamp (for example year 0, or month 14). (8544).

An error message is now generated when you specify an invalid time value or timezone.

Logging Behavior

Error-level log messages were previously being logged to syslog, even when not specified. This no longer happens. If you require pre-NuoDB 3.2 behavior, specify the --syslog option with the error option argument.

Backup Error Handling

Prior to the release of NuoDB 3.2, you could (mistakenly) add incremental or journal hot copy backups to a backup set created from a different archive. An error is now generated when you attempt to add hot copy backups to the same backup set from different archives. (8564)

Connecion ID changes

Note: When upgrading to NuoDB 3.2, the CONNID value remains a 32-bit (INTEGER), locally-unique value until every TE and Storage Manager (SM) in the database have been upgraded. For any connection established during the rolling upgrade process, different values are returned by GETCONNECTIONID, that is, the old locally-unique 32-bit value(s) from before the upgrade completed as well as the new 64-bit globally unique value(s) available post upgrade. See example below.

SQL> select getnodeid(), getconnectionid() from dual;

GETNODEID GETCONNECTIONID

--------- ---------------

4 4

SQL> select getnodeid(), getconnectionid() from dual;

GETNODEID GETCONNECTIONID

--------- ---------------

4 17179869188

SQL>

PHP PDO Drivers

The PHP PDO drivers have been removed from the release package. If required, you can download the PHP PDO driver from GitHub.

Connection Properties

The LBTag connection property can now specify multiple comma separated values. A database connection is established with the first available TE with the LBTag specified. (4222)

See also: Resolved Issues and Known Issues.