Resolved Issues
This section includes fixes that do not change the user interface and/or API behavior of the product. For a summary of changes, see Changes in this release.
If a resolution is associated with a reported issue, a Zendesk reference number is displayed, for example (10283).
Resolved in NuoDB 5.0.4
-
A Transaction Engine (TE) could shut down unexpectedly when a table is updated. This only occurs if the table previously had an Expression-based index (EBI) created and dropped while running the previously supported Scalar Execution Engine (SEE). (13383, 13484, 13488, 13500, 13561)
The issue has been resolved. -
When using the
AFTER UPDATE
trigger, a Transaction Engine (TE) or a Storage Manager (SM) running the legacy Scalar Execution Engine (SEE) could shut down with "transform: Failed to update cipher". (13555, 13558, 13559)
The issue has been resolved. -
When the Transparent Data Encryption (TDE) is enabled on an SM, creating or updating a row such that the combined column data length exceeds 2 GB, could cause the database to shut down with "EXITED: Journal Error: Failed to update cipher: Engine connection to admin process closed". (13544)
The issue has been resolved.
For example, if a new row with a size exceeding 1.9 GB is inserted, an error is now reported as "width of record being inserted is too large: size of <size_of_the_row> exceeds system limit of 1900000000".
For more information about data type size limits and recommendations, see SQL String and Character Types. -
During an extract operation, if the data type or structure of the field does not match the data type or structure of the record in the database, the database could shut down unexpectedly with "ASSERT: Platform/TableRecord.h:132: FAILED: offsets.offsets[position] < length". (13572)
The issue has been resolved.
For example, if the data type of the field retrieved from the record does not match the data type of the record, an error is now reported as "Record sequence <record_sequence> is corrupted, and field extraction at position <position> is not possible". -
A client application request to retrieve the generated keys associated with a multi-statement SQL query execution could report, "Internal error: failed precondition scriptResult.generatedKeys.size() == 1, file <file-name>, line <line-num>". (13582)
The issue has been resolved.
A client application request to retrieve the generated keys associated with an unsuccessful multi-statement SQL query execution now reports, "generated keys cannot be returned for multiple statements". -
Installing NuoDB using the NuoDB EXE Windows installer may report, "Could not locate Python 2.7". (13370)
For Python version requirements, see Software Requirements.
The issue has been resolved. -
Deleting a Storage Group (SG) while the TEs are running could cause the TEs to shut down unexpectedly.
The issue has been resolved.
Resolved in NuoDB 5.0.3
-
Executing a SQL query with the
REOPTIMIZE ALWAYS
hint usingnuosql
could shut down a TE unexpectedly.
The issue has been resolved. -
In a Kubernetes deployment, removing a database using
helm uninstall
would retain database storage archive metadata which later prevented the database from performing a successful cold start.
The issue has been resolved. -
During a database full synchronization operation (for example, during a database upgrade, clone, or restore) the Storage Manager (SM) process could exit with "EXIT:Failed to read an object from disk Index". (13467, 13526, 13611)
The issue has been resolved. -
Creating a hot copy of a database with Table Partitions and Storage Groups (TPSGs) using
nuodocker backup database --labels
ornuocmd hotcopy database --process-filter
skipped backing up the SMs that were not in theRUNNING
state, resulting in an incomplete hot copy backup.
The issue has been resolved. -
A TE could shut down unexpectedly when a SQL query execution triggers explain plan printing and the explain plan contains an index lookup with a specific set of control characters. (13563, 13569, 13570, 13574)
The issue has been resolved.
Resolved in NuoDB 5.0.2
-
In certain domain partition scenarios, APs could not establish a stable Raft leader due to transient connectivity failures causing client objects to become unusable for an indefinite period after the connection was restored. (13362)
The issue has been resolved. -
When trying to restart the SMs in a staggered fashion, the SMs may not restart because the database could not assign storage group leaders. For example, in a Kubernetes deployment environment, this could occur when one or more SM pods are in the
CrashLoopBackOff
state.
The issue has been resolved. -
Executing
nuocmd hotcopy database
with the--backup-dirs
option reportedstatus:completed
before the changes were synchronized to disk.
The issue has been resolved. -
An SM or a TE could shut down unexpectedly, reporting "FAILED: BUGCHECK: Unexpected aborted state 'Lost' ". (13413, 13414, 13415)
The issue has been resolved. -
Using the
ROWNUM()
function in aWHERE
clause would report "ROWNUM() is not allowed within this context". (13394)
For more information, see SQL System Information Functions and SELECT.
The issue has been resolved.
Resolved in NuoDB 5.0.1
-
An initial redundant optimization step was performed even when the
REOPTIMIZE ALWAYS
hint was present. (13216)
The issue has been resolved. -
A large number of queries on the LASTSTATEMENT System Table could result in an error due to an integer overflow condition.(10772)
The issue has been resolved. -
A SQL query on the LASTSTATEMENT System Table would return the wrong result for the
COMPILETIME
field if query reoptimization occurred.
The issue has been resolved. -
A Transaction Engine (TE) or Storage Manager (SM) that sends a large amount of log messages to
nuoadmin.log
could reduce the database performance or cause an unexpected shutdown with an Out-of-Memory (OOM) error. (13300)
The issue has been resolved. -
When scanning a fragmented index with many atoms, a Transaction Engine (TE) could shut down with a Segmentation Violation (SEGV) error. (12245, 13351)
The issue has been resolved.A warning message, "Index <IndexName> is fragmented. Please, rebuild" is now written to the nuoadmin.log
every hour while the fragmentation condition remains true. -
When an Admin Process (AP) configured in the
initialMembership
was deleted, it could not be restarted without the Raft log file due to the disruption of the Raft leadership among the remaining APs. The restarted AP shuts down automatically with a message that it has been removed from the current domain membership. (13310, 13313)
The issue has been resolved. -
Running NuoDB Admin in Java 8 may record the message, "Unable to find Java 9+ MethodHandles.privateLookupIn. Blackbird is not performing optimally!" in
nuoadmin.log
and resulted in a stack trace.
The issue has been resolved. -
When an AP is shut down and restarted, an SM or a TE that was started with TLS network encryption could reconnect to the AP using non-TLS network encryption.
The issue has been resolved. -
When using the
GENERATED
column constraint clause, a table column could be simultaneously specified as a generated column and a computed column.
The issue has been resolved. -
Listing the storage groups for a database using
nuocmd show storage-group
ornuocmd get storage-groups
could generate a NullPointerException if invoked concurrently or in rapid succession with updates to the database configuration.
The issue has been resolved. -
Attempting to read atoms last updated by NuoDB 3.2 or earlier could report, "Cannot load atom <atom_type>: version not supported (max version (5.0))". (13395)
The issue has been resolved. -
A SQL statement with a
WHERE
clause that resulted in a decimal overflow may select a non-optimal execution plan.
The issue has been resolved.
Resolved in NuoDB 5.0
This section provides a summary of the issues resolved in the release of NuoDB 5.0 compared with the original NuoDB 4.3 release.
-
It was easy for users to misuse the 'Y' and 'y' date symbols in a date format string which resulted in inconsistent query results. Error checking and messaging to enforce correct use of these symbols has been added. For more information, see SQL Data Type Conversion Functions. (10102)
The issue has been resolved. -
Referencing the
system.procedures
table in statements was not case insensitive like other system meta data tables. (7032, 11255)
The issue has been resolved. -
A Transaction Engine (TE) could exit due to an Out-of-Memory (OOM) condition if a statement included many subqueries. (13176, 13253)
The issue has been resolved. -
nuoarchive check
could fail with "ASSERT: Platform/PlatformRecords.cpp:4740: FAILED: transaction" while attempting to repair an index. (12254)
The issue has been resolved. -
NuoDB could fail with "corrupted atom (fingerprint mismatch, got <number>, expected 0)" when using database archives created with NuoDB versions prior to 3.0.2. (13231)
The issue has been resolved. -
An index could report "unable to verify uniqueness in index <index name> after 10 attempts" for each attempt to insert a particular key. For example, this error could be reported for a system table index when trying to create or truncate a table. (12986, 11883, 11901, 12258)
The issue has been resolved. -
After unique index creation, the exception "Uniqueness violation encountered while populating index <index name>, key = '<key>'" could be reported, resulting in unexpected database process shut down with message "FAILED: !objectIds.isFree(objId)". (13019)
The issue has been resolved. -
When using the
Connection.setSchema
function in the NuoDB JDBC Driver, the function would fail if the schema name included supported special characters. (13005)
The issue has been resolved. -
A Storage Manager (SM) could shutdown abruptly due to running out of memory while syncing a database containing extremely large records.
The issue has been resolved. -
Executing thousands of
UNION ALL
statements could result in an abnormal shutdown of the Transaction Engine (TE) due to an out-of-memory condition. (12966, 13087, 13094, 13105, 13129)
The issue has been resolved. -
A
SELECT
statement that included aGROUP BY
, anORDER BY
, and window functions could return results in the incorrect order. In addition, available performance optimizations may not have been chosen.
The issue has been resolved. -
A Storage Manager (SM) container could not enter the ready state due to missing details on the generated command line that are required by the Kubernetes readiness probe. (13053)
The issue has been resolved. -
A Transaction Engine (TE) could shut down abruptly due to running out of memory when executing multiple queries with large number of query parameters. (13038)
The issue has been resolved. -
If it was detected at compilation time that a query could not return any results, the result set metadata would not populate.
The issue has been resolved. -
The exception "can’t find ResultSet" could occur due to the loss of
ResultSet
metadata after the commit.
The issue has been resolved. -
The
nuocmd
subcommandshotcopy-status
andhotcopy-info
with the--show-json
option could report incorrectdestinationDirectory
information. (13011)
The issue has been resolved. -
Referencing a sequence with
NEXT VALUE
could result in connection shutdown with message, "Error 58000: Unexpected internal error requires closing client connection".
The issue has been resolved. -
Docker related subcommands could appear twice in the help text output when invoking,
nuocmd <verb> -h
andnuodocker <verb> -h
.
The issue has been resolved. -
A Transaction Engine (TE) could not start when there is a Storage Manager (SM) in the syncing state. (12884)
The issue has been resolved. -
Creating a large number of tables in the same transaction could result in a performance degradation. (13016)
The issue has been resolved. -
If no data is sent from a client connection to the NuoDB Admin agentPort (48004), then the connection may close and produce error messages, "Server Failed to process message" and "Unable to parse Tag/XML from message". This error could occur when deploying NuoDB in Kubernetes using the NuoDB Helm Charts with
admin.externalAccess.enabled=true
.
The issue has been resolved. -
The Admin Process (AP) would shut down a Storage Manager (SM) during startup if journal recovery processed more than 8192 unreaped journal files. When this occurred, a
java.lang.NumberFormatException
error would appear in thenuoadmin.log
file.
The issue has been resolved. -
When running NuoDB in containerized deployments, if a non-root user runs the
ping
operation in a Docker container, the "ping: socket: Operation not permitted." error is returned.
The issue has been resolved.This issue exists in NuoDB 4.3.2 only. -
The
nuoarchive check
command could not be run on an archive if a Storage Manager (SM) is shut down in the middle of transitioning the state of the archive from encrypted to decrypted.
The issue has been resolved. -
Creating multiple
FOREIGN KEY
constraints referencing the same table, including the same column, would results in an error indicating a duplicate value in a unique index. (9588)
The issue has been resolved. -
The
nuoarchive check
command could stop responding when referencing missing table atoms.
The issue has been resolved. -
If a statement included ten or more subqueries, a Transaction Engine (TE) could shut down abnormally with "Unable to free memory for 300 seconds". (13107, 13190, 13197)
The issue has been resolved. -
When the
KILL CONNECTION
SQL command was executed, in addition to the database connection, a Transaction Engine (TE) could shut down unexpectedly with "Engine connection to admin process closed". (13206)
The issue has been resolved. -
Renaming a column used to partition a table would return "Error: cannot rename column: table partitioned by this column". (12997)
The issue has been resolved. -
In a bare metal (physical/VM) deployment environment, if the Admin Process (AP) stopped while NuoDB engines (TE or SM) were still running on the same host, restarting the AP could fail with an error “Address already in use”. (12162)
The issue has been resolved. -
Using complex expressions with literal values in SQL Aggregate Functions or SQL Window Functions could be cast incorrectly and return wrong results.
The issue has been resolved. -
A SQL statement using "PARTITIONS" to name an identifier would return an error. (13249)
The issue has been resolved. -
From within a Data Definition Language (DDL) trigger it was possible to trigger another DDL trigger that could lead to a recursion error which returned, "Error 58000: maximum call stack depth of 15 exceeded".
The issue has been resolved. -
When using
nuosql
, every third line of a multi-line statement would mistakenly prompt the user, "missing semicolon?".(8566)
The issue has been resolved. -
If running
ALTER TABLE ALTER COLUMN
and a foreign key reference was added, a Transaction Engine (TE) could shut down unexpectedly with "Connection lost. Use RECONNECT command to continue."
The issue has been resolved. -
A SQL statement that failed to execute due to insufficient authorization was not recorded in the NuoDB Admin log file,
nuoadmin.log
.
The issue has been resolved. -
Executing
GRANT … ON ALL TABLES IN SCHEMA …
on a schema that contains a views object would return an error.
The issue has been resolved.