Resolved issues release notes for 23.4.x.
Issue Key |
Component |
Description |
VER-89773 |
Execution Engine |
When casting a negative numeric value to an integer and the result of that cast would be 0, then we would incorrectly get an "out of range" error. This has been resolved. |
VER-89777 |
Security |
The following improvements have been made to LDAPLink:
- LDAP synchronizations have been optimized and now are much faster for nested groups.
- Query profiling now works with LDAP dryrun functions.
|
VER-89780 |
Hadoop |
Previously 'Get block locations' events were missing from the dc_udfs_events table, now this is fixed. |
VER-89781 |
Optimizer |
In some circumstances, a UNION query that grouped an expression that coerced a value to a common data type returned an error. This issue has been resolved. |
VER-89843 |
Data Collector |
If a notifier was set for some DC tables and then subsequently dropped, it still remained present in those DC table policies. This could cause a very large number of messages in vertica.log and potential node crashes. The issue was resolved by making "DROP NOTIFIER" support the CASCADE logic. Without CASCADE, drop would fail for the notifiers still used by DC tables. |
VER-89907 |
Security |
Previously, when configuring a chain of certificates longer than a root CA certificate and a client certificate for internode TLS, the configuration would successfully be applied, but cause the cluster to shut down. This has been fixed. |
VER-89986 |
Kafka Integration |
When a notifier was set for the NotifierErrors or NotifierStats Data collector (DC) tables, notifications sent with a Kafka notifier might cause a loop that produced an infinite stream of notifications. This might result in severely degradated node performance. This issue has been resolved. Now, notifications are disabled for these DC tables, and any existing notifiers have been removed from these tables. |
VER-90064 |
ComplexTypes, Data load / COPY |
A logic gap in the source code could lead to an infinite loop while loading complex arrays with thousands of elements, causing the DML statement to never complete. This issue has been fixed. |
VER-90089 |
Security |
In cases of intermittent network connectivity to an LDAP server, Vertica will now retry bind operations. |
VER-90856 |
Optimizer |
Create Table As Select statements with repeated occurrences of now() and similar functions were inserting incorrect results into the target table. The issue has been fixed. |
Issue Key |
Component |
Description |
VER-40945 |
Client Drivers - VSQL |
Previously, vsql -f would return 0 (success) even if it encountered an error.
vsql -f now properly reports errors if they occur. On success, it continues to return 0. On failure, it returns a non-zero error code that maps to the [standard Linux error codes for file access|https://man7.org/linux/man-pages/man3/errno.3.html].
|
VER-69918 |
Client Drivers - VSQL |
VSQL now returns a more detailed error message if it is disconnected from the server. |
VER-81199 |
Execution Engine |
Queries with large tables stopped the database because the indices that Vertica uses to navigate the tables consumed too much RAM. This issue has been resolved, and now the indices use less RAM. |
VER-82009 |
Client Drivers - ODBC |
Previously, the connection property FastCursorClose was set to false by default, which prevented you from canceling sqlfetch(). You had to set it to true with conn.addToConnString("FastCursorClose=1"); to cancel requests.
FastCursorClose is now set to {{true}} by default.
|
VER-84047 |
Procedural Languages |
Previously, calling a stored procedure with insufficient temporary disk space could cause the node to go down. This has been fixed. Stored procedures now produce a standard query error indicating that there is insufficient space. |
VER-85340 |
SDK |
Previously, you could not compile Vertica UDx builds with GCC compiler version 13 and higher. This issue has been resolved. |
VER-86100 |
Performance tests |
In some cases, the NVL2 function caused Vertica to crash when it returned an array type. This issue has been resolved. |
VER-86690 |
Optimizer |
During the planning stage, updates on tables with thousands of columns using thousands of SET USING clauses took a long time. Planning performance for these updates was improved. |
VER-86714 |
Catalog Engine |
If you used CREATE PROJECTION to create a projection whose name conflicted with an existing projection's name, there would be a ROLLBACK. This issue has been resolved. Now, CREATE PROJECTIONS appends suffixes (_v1, v2, etc.) to new projection names to avoid naming conflicts. |
VER-86863 |
Catalog Engine |
Previously, when a cluster lost quorum and switched to read-only mode or stopped, some transaction commits in the queue might get processed. However, due to the loss of quorum, these commits might not have been persisted. These "transient transactions" were reported as successful, but they were lost when the cluster restarted.
Now, when Vertica detects a transient transaction, it issues a WARNING so you can diagnose the problem, and it creates an event in ACTIVE_EVENTS that describes what happened.
|
VER-87049 |
Optimizer |
In some cases, using SQL macros that return string types could result in core dumps. The issue has been resolved. |
VER-87075 |
ComplexTypes, Execution Engine |
The optimization that makes it so that EXPLODE on complex types only materializes fields that are needed in the query was not applied to the similar UNNEST function. This has been resolved, and now UNNEST similarly prunes out unused fields from scans/loads. |
VER-87084 |
EON |
In rare circumstances, the automatic sync of catalog files to the communal storage stopped working on some nodes. Users could still manually sync with sync_catalog(). The issue has been resolved. |
VER-87158 |
Tuple Mover |
The Tuple Mover logged a large number of PURGE requests on a projection while another MERGEOUT job was running on the same projection. This issue has been resolved. |
VER-87183 |
Optimizer |
Queries that contained a WITH query that was referred to more than once and also contained multiple distinct aggregates failed with a system error. This issue has been resolved. |
VER-87229 |
Optimizer |
NOT LIKE ANY and NOT LIKE ALL are consistent with PostgreSQL now - the phrases LIKE, ILIKE, NOT LIKE, and NOT ILIKE are generally treated as operators in PostgreSQL syntax. |
VER-87361 |
ComplexTypes |
The flex and kafka parsers would erroneously not respect the parameter "reject_on_materialized_type_error" in cases where an array was too large for the target column, and no element was rejected. Previously, such values would always be rejected. This has been corrected, and now if "reject_on_materialized_type_error" is false, those values will be set to NULL instead. |
VER-87445 |
Kafka Integration |
In some circumstances, there were long timeouts or the process might hang indefinitely when the KafkaAvroParser accessed the Avro Schema Registry. This issue has been resolved. |
VER-87537 |
Documentation, Installation Program |
Some characters did not render correctly when specific commands were copied and pasted from the documentation. This issue has been resolved. |
VER-87574 |
Backup/DR |
When the database had multiple backup locations, vbr did not use the correct credentials, causing operations to fail. This issue has been corrected. |
VER-87647 |
Execution Engine |
When casting a NUMERIC type to an INTEGER type, the bounds of acceptable values were based on the NUMERIC(18, 0) type, not the INTEGER type. This meant that valid 64-bit integers with 19 digits returned an error. This issue has been resolved, and now casting a NUMERIC type to an INTEGER type uses the correct bounds for the INTEGER type. |
VER-87654 |
Admin Tools, Data Collector |
If you revived a database and the EnableDataCollector parameter was set to 1, you could not start the database after it was revived. This issue was resolved. To start the database, disable the cluster lease check. |
VER-87666 |
ComplexTypes, Execution Engine |
When rewriting a CROSS JOIN UNNEST query into an equivalent query that puts the UNNEST in a subquery, requesting scalar columns from a table with larger complex columns could lead to an INTERNAL error. This has been resolved. |
VER-87668 |
Optimizer |
In some query plans with segmentation across multiple nodes, Vertica would get an internal optimizer error when trying to prune out unused data edges from the plan. This issue has been resolved. |
VER-87685 |
Client Drivers - ODBC |
Previously, the ODBC driver could return 64-bit FLOATs with incorrect values in its last bit, which are not IEEE-compliant. This has been fixed. |
VER-87701 |
Admin Tools |
On SUSE Linux Enterprise Server 15, the systemctl status verticad command failed. This issue has been resolved. |
VER-87723 |
Optimizer |
Queries with outer joins over subqueries with WHERE clauses that contain AND expressions with constant terms sometimes returned an error. This issue has been resolved. |
VER-87817 |
Optimizer |
When you created a UDx side process, Vertica required that the current time zone have a name. This caused a crash when a UDx side process was created under a time zone with a GMT offset rather than a name. This issue has been resolved. |
VER-87857 |
DevOps |
Fixed RPM digests by installing a newer version of the RPM on our build container when building RPMs. |
VER-87864 |
Procedural Languages |
Fixed memory leaks that could occur with certain stored procedures. |
VER-87912 |
Procedural Languages |
When a Stored Procedure executed a subquery that included constraints, it returned an incorrect value. This issue has been resolved. |
VER-87942 |
EON |
The sync_catalog function failed when MinIO communal storage did not meet read-after-write and list-after-write consistency guarantees. A check was added to bypass this restriction. However, if possible, users should make sure that their MinIO storage is configured for read-after-write and list-after-write consistency. |
VER-87945 |
Backup/DR |
Every time Vertica tries to load a snapshot, it checks all the storage files. The file check costs too much time and is not necessary to do it so often. This check is now disabled. |
VER-87992 |
Data Collector |
In some environments the io_stats system view was empty. The monitoring functionality has been improved with better detection of I/O devices. |
VER-88010 |
Optimizer |
In some cases, when Vertica used an optimization to constant-fold a CASE expression in a query into one of its possible results, it would produce an internal error. This issue has been resolved. |
VER-88014 |
DevOps, UI - Agent |
On SUSE Linux Enterprise Server 15, systemd failed to start the agent process, which caused some Management Console actions to fail on nodes that ran SUSE 15. This issue has been resolved. |
VER-88166 |
Backup/DR |
Backup and restore operations failed on FIPS-enabled systems. This issue has been resolved. |
VER-88171 |
Admin Tools |
The Admintools stop_db command failed and returned an error that described active sessions prevented the shutdown. This issue has been resolved, and now the stop_db command stops the database with no errors. |
VER-88233 |
UI - Management Console |
When you provisioned a new database on Amazon Web Services, the operation failed. This issue has been resolved. |
VER-88395 |
Logging |
Previously, if writes failed because the disk was full, Vertica could go down. This has been fixed. |
VER-88447 |
Execution Engine |
If there are user-created system tables and IS_SYSTEM_TABLE is set to "true" when you upgrade to 23.3.0, queries on some V_CATALOG system tables fail with an assertion error after you complete the upgrade. |
VER-88468 |
Optimizer |
In some circumstances, queries with outer joins or cross joins that also utilized Top-k projections caused a server error. This issue has been resolved. |
VER-88618 |
Optimizer |
Queries that contained a WITH query that was referred to more than once, and also contained joins on tables with segmented projections and SELECT DISTINCT or LIMIT subqueries sometimes produced an incorrect result. This issue has been resolved. |
VER-88634 |
Spread |
Previously, if Vertica received unexpected UDP traffic from its client port, the node could go down. This issue has been fixed. |
VER-88895 |
Security |
The following improvements have been made to LDAPLink:
- LDAP synchronizations have been optimized and now are much faster for nested groups.
- Query profiling now works with LDAP dryrun functions.
|
VER-89273 |
Data load / COPY |
If a Parquet query or load were to be interrupted (such as by a LIMIT clause, exception during execution, or user cancellation) while the database has configuration parameter "ParquetColumnReaderSize" set to zero, then Vertica could crash. This issue has been fixed. |