Resolved issues release notes for 12.0.x.
Issue Key |
Component |
Description |
VER-87087 |
UI - Management Console |
The Spring security package is upgraded from version 5.7.4 to version 5.7.5 in this release. |
VER-89518 |
Procedural Languages |
Fixed memory leaks that could occur with certain stored procedures. |
VER-89633 |
UI - Management Console |
The HTTP Strict-Transport-Security (HSTS) response header was added to all MC responses. This header informs the browser that you should access the site through HTTPS only, and the browser should automatically convert any HTTP connections to HTTPS. |
VER-91795 |
Execution Engine |
In rare situations, a logic error in the execution engine "ABuffer" operator would lead to buffer overruns resulting in undefined behavior. This issue has been fixed. |
VER-91820 |
Execution Engine |
Vertica's execution engine pre-fetches data from disk to reduce wait time during query execution. Memory for the pre-fetch buffers was not reserved with the resource manager, and in some situations a pre-fetch buffer could grow to a large size and bloat the memory footprint of a query until it completed. Now queries will account for this pre-fetch memory in requests to the resource manager; and several internal changes mitigate the long-term memory footprint of larger-than-average pre-fetch buffers. |
VER-92111 |
DDL - Projection |
When we would scan over a projection sorted by two columns (ORDER BY a,b) and materialize only the second one in the sort order (b), we would mistakenly assume the scan is sorted by that column for the purposes of collecting column statistics. This would lead to possible incorrect results when predicate analysis is enabled, and has now been resolved. |
VER-92115 |
Catalog Engine |
Previously, syslog notifiers could cause the node to go down when attached to certain DC tables. This issue has been resolved. |
VER-92126 |
Optimizer |
Queries using the same views repeatedly would sometimes return errors if those views included WITH clauses. The issue has been resolved. |
VER-92289 |
Sessions |
The ALTER USER statement could not set the idle timeout for a user to the default value, which is defined by the DefaultIdleSessionTimeout configuration parameter. If the empty string was specified, the idle timeout was set to unlimited. This issue has been resolved. You can now set the idle timeout to the DefaultIdleSessionTimeout value by specifying 'default' in the ALTER USER statement. |
VER-92678 |
Scrutinize |
The scrutinize utility produces a tar file of the data it collects. Previously, scrutinize could fail to create this tar file if it encountered a broken symbolic link. This issue has been resolved, and now the size of the tar file is logged to scrutinize_collection.log . |
VER-92750 |
HTTP |
Changing the Vertica server certificate triggers an automatic restart of the built-in HTTPS server. When this happened on a busy system, the nodes could sometimes go down. The issue has been fixed. |
VER-92822 |
Data load / COPY |
In COPY, some missing error checks made it so certain invalid input could crash the database. This has been resolved. |
Issue Key |
Component |
Description |
VER-89770 |
Scrutinize |
The parameter --log-limit determines the maximum size of the vertica log that will be preserved when running scrutinize. The limit is applied to the vertica.log file on all nodes in the cluster. The default value changed from 1GB to unlimited. |
VER-89779 |
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-89845 |
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-89909 |
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-89915 |
Backup/DR |
Backups to S3 object storage and Google Cloud Storage failed and returned a "Temp path" error. This issue has been resolved. |
VER-89988 |
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-90066 |
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-90091 |
Security |
In cases of intermittent network connectivity to an LDAP server, Vertica will now retry bind operations. |
VER-90107 |
Catalog Engine |
Queries now run correctly when the files of delete vectors are in different storage locations. |
Issue Key |
Component |
Description |
VER-87254 |
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 issue has been resolved, and now UNNEST similarly prunes out unused fields from scans/loads. |
VER-87776 |
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-87800 |
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-87804 |
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-87821 |
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-87877 |
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.
|
Issue Key |
Component |
Description |
VER-87119 |
Kafka Integration, Security |
Previously, using a Kafka Notifier with SASL_SSL or SASL_PLAINTEXT would incorrectly use SSL instead. This has been resolved. |
VER-87255 |
Optimizer |
Merge queries with an INTO...USING clause that calls a subquery would sometimes return an error when merging into a table with Set Using/Default query columns. The issue has been resolved. |
VER-87258 |
Execution Engine |
Because the explode function is a 1:N transform function, using ORDER BY in its OVER clause has an undefined effect. Previously, using an ORDER BY clause in the OVER clause of Explode could result in an INTERNAL error if the configuration parameter TryPruneUnusedDataEdges was set to 1. This issue has been resolved. |
VER-87294 |
Optimizer |
Queries eligible for TOPK projections that were also eligible for elimination of no-op joins would sometimes exit with internal error. The issue has been resolved. |
VER-87297 |
Backup/DR |
When each node in a cluster pointed to a different backup location, the backup location was non-deterministic, and there were inconsistent failures. This issue was resolved. |
VER-87422 |
Optimizer |
In some cases, using SQL macros that return string types could result in core dumps. The issue was resolved. |
VER-87433 |
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-87443 |
Data load / COPY |
In some circumstances, Parquet file row groups whose metadata field "TotalBytes" has the value 0 might not load. This issue has been resolved. |
Issue Key |
Component |
Description |
VER-83522 |
Admin Tools |
The root cause of this Jira was addressed by resolving VER-84721. |
VER-84116 |
ComplexTypes |
Previously, system tables jdbc_columns and odbc_columns looked up and displayed type information from v_catalog.types, which does not include information on complex types. This issue has been resolved: these tables now retrieve complex type data from the system table v_catalog.complex_types. |
VER-84293 |
Optimizer |
Queries with deeply nested expressions caused nodes to crash due to stack overflow. This issue has been resolved: now, the query runs normally if stack overflow occurs during non-essential stages of query processing–for example, getting pretty print for the expressions; or the query fails with an error message that the query contained an expression too large to analyze. |
VER-84540 |
Security |
Enabling data-channel encryption with a self-signed certificate could cause the database to go down. This issue has been resolved. |
VER-84610 |
Security |
An LDAP exception occurred when an LDAP user name was modified manually in Vertica and conflicted with a new LDAP user, causing the initiator node to go down. This issue has been resolved. |
VER-84653 |
Data load / COPY |
Multiple-row insert is implemented with the explode() function. If explode() could not be found in the active session's search path, then the multiple-row insert failed. This issue has been resolved. |
VER-84721 |
Admin Tools |
Installation of an external procedure wrote the copied file in strings rather than bytes. Length calculation errors occurred when Japanse, Chinese, or other special characters were inserted, causing discrepancies between byte and string lengths. This issue has been resolved by writing the copied file in bytes. |
VER-84723 |
SDK, UDX |
Previously, running UDT functions with large parameters allocatef large amounts of memory. The issue has been resolved. |
VER-84842 |
Backup/DR |
Full restore in Eon mode sometimes failed if some nodes were down during backup. This issue has been resolved. |
VER-84897 |
Data Export |
Previously, all exports to parquet/orc/delimited/JSON failed if the exported query invoked a multi-part query plan. This issue has been resolved. |
VER-84907 |
Client Drivers - ADO |
When using the ADO.NET driver, canceling a request while load balancing was enabled sometimes cause an exception to occur. This issue has been resolved. |
VER-84977 |
Data load / COPY |
A check to prevent TOCTOU (time of check to time of use) privilege escalations issued false positives in cases where a file is appended to during a COPY. This issue has been resolved: the check has been updated so it no longer issues a false positive in such situations. |
VER-84978 |
Security |
The "starttls" LDAP authentication parameter is no longer deprecated and should generally be used when the LDAPAuth TLS Configuration is not granular enough to handle your environment. For example, if you have several LDAPAuth servers and only some of them can handle TLS, use ALTER AUTHENTICATION to set "starttls" to "soft" in your authentication record to make TLS a preference and not a requirement.
For details, see the Vertica documentation on [LDAP authentication parameters|https://www.vertica.com/docs/12.0.x/HTML/Content/Authoring/Security/ClientAuth/LDAPParameters.htm].
|
VER-85005 |
Security |
Patched libtar to protect against CVE-2021-33643, CVE-2021-33644, CVE-2021-33645, and CVE-2021-33646. |
VER-85017 |
Client Drivers - JDBC, Sessions |
Previously, if a JDBC client required TLS and the server did not support TLS, the JDBC driver failed to close the socket on the client side, which caused the server to keep its own socket open. As a result, clients sometimes failed to connect with the error "SSL negotiation failed" or long server shutdown times. This issue has been resolved. |
VER-85092 |
Admin Tools |
Previously, multibyte characters in LDAPLinkFilterGroup and LDAPLinkFilterUser could prevent the database from starting. This issue has been resolved. |
VER-85197 |
Optimizer |
Queries containing WITH statements with sorted output referenced in a different way throughout the query sometimes returned erroneous results. The issue has been resolved. |
VER-85285 |
Optimizer |
LIMIT k OVER (...) clauses incorrectedly estimated output rows by k, where k was calculated for every partition in the OVER clause. This issue has been resolved: estimation of output rows is now derived from the OVER clause. |
VER-85364 |
Database Designer Core |
DESIGNER_DESIGN_PROJECTION_ENCODINGS returned with an error if a period was embedded in the design name. This issue has been resolved. |
VER-85372 |
Tuple Mover |
The Mergeout strata algorithm had a hidden overflow issue due to incorrect type casting for wide projections with more than 4095 columns. This issue has been resolved. |
VER-86519 |
DevOps |
Fixed RPM digests by installing a newer version of the RPM on our build container when building RPMs. |
This hotfix is internal to Vertica.
Issue Key |
Component |
Description |
VER-72373 |
UDX |
Creation of SQL macros with MapJSONExtractor failed with a 0-length string error. This issue has been resolved. |
VER-73670 |
Machine Learning, UDX |
The side process Vertica uses to load and execute Python UDx libraries exposed more dynamic symbols than strictly necessary, which could cause conflicts and import failures when UDx libraries contained conflicting versions of those third-party libraries. This issue has been fixed. |
VER-79167 |
Execution Engine |
Table update operations that involved very long (> 1MB) row sizes attempted to preallocate more memory than was available to the resource pool, based on excessive block size calculations, and failed for lack of resourcer pool capacity. This issue was resolved by avoiding excessively large block sizes. |
VER-80639 |
UI - Management Console |
Two MC Activity pages, Table Utilization and Table Details, erroneously referenced system table columns that were removed in an earlier release. This issue has been resolved. |
VER-81348 |
Procedural Languages |
Previously, running ANALYZE_STATISTICS through a stored procedure without superuser privileges could cause the database to go down. This issue has been resolved. |
VER-82297 |
Client Drivers - ODBC, Client Drivers - VSQL |
vsql now dynamically links the kerberos library in macOS. |
VER-83000 |
Optimizer |
When UPDATE referenced a table column with an access policy, the access policy rule was applied twice instead of once. This issue has been resolved: now the access policy rule is applied only once. |
VER-83292 |
Admin Tools |
Recent Linux distributions such as RHEL 8 and Ubuntu 20 (and higher) introduced bracketed paste mode which, if enabled, broke intall_vertica and re_ip. This issue has been resolved. |
VER-83408 |
Optimizer |
If a query with an ORDER BY clause also contained a WITH clause with its own ORDER BY clause, and configuration {{{}EnableWITHTempRelReuseLimit=1{}}}, Vertica occasionally crashed in the late stages of query planning. This issue has been resolved. |
VER-83532 |
Optimizer |
Queries with string expressions in SELECT statements that were part of other expressions and also contained constant expressions sometimes returned an error. The issue has been resolved. |
VER-83609 |
Backup/DR |
Backup and restore on FIPS-enabled systems using object storage systems such as S3 could fail due to unavailability of the MD5 checksum implementation. These operations do not use MD5 for security, and this issue was resolved by flagging the uses of MD5 as not-for-security, thus enabling its use even with FIPS mode enabled. |
VER-83649 |
Kubernetes |
The vdb-gen tool selected an incorrect kSafety value from the database. This issue has been resolved. |
VER-83700 |
Storage and Access Layer |
If you added a column to a table in an Eon database with active subscribers to the shard of a DOWN node, Vertica failed to create storage containers for that column. As a result, attempts to query that column failed. This issue has been resolved: given the same conditions, Vertica now returns an error on attempts to add a table column. |
VER-83735 |
Optimizer |
Queries with complicated WITH clauses sometimes hung in Materialized WITH mode when directed queries or saved query plans were present in a database. The issue has been resolved. |
VER-83865 |
Cloud - Amazon, UI - Management Console |
In MC for AWS, the i4i.8xlarge instance had both NVMe volumes assigned to temp. This issue has beenn resolved: now, temp and depot each have one NVMe volume. |
VER-83943 |
Backup/DR, Optimizer |
When shard segmentation bounds and non-resharded storage container segmentation bounds did not match, reshard_database() returned with an error, and a hint to recreate problematic tables with CREATE TABLE AS; however, the CREATE operation resulted in tables that were missing rows. This issue has been resolved by changing the hint guidance: export the table data, truncate the table, and then use COPY to reload the table with the exported data. |
VER-83974 |
Data Export |
Export to delimited did not allow the same character to be used for both 'escapeAs' and 'enclosedBy'. This restriction has been removed. |
VER-83988 |
Admin Tools |
admintools uses a pseudoterminal (ssh + expect) to transfer data between nodes. When sending data larger than 4k, successful transfer depends on disabling canonical mode in the pseudoterminal. In some cases, this setting was ignored. This issue has been resolved. |
VER-84073 |
Backup/DR |
The vbr listbackup task failed with an error when nodes in the configuration file's [mapping] section did not match the nodes in database. This issue has been resolved: listbackup now returns with a warning about nodes that are missing in the configuration file. |
VER-84122 |
Optimizer |
Optimizer did not recognize valid FK-PK joins in some multi-key joins over inputs with Unique/Primary Key constraints. This issue has been resolved. |
VER-84141 |
Optimizer |
In some cases, row count estimate for joins on complex predicates was inaccurate. Recent improvements have addressed this issue. |
VER-84250 |
SDK |
Loading JSON data into a geospatial column (geometry or geography) using FJSONParser errored out with unknown data type error. This issue has been resolved. |
VER-84475 |
Optimizer |
Queries with several subqueries in SELECT that were are also in the GROUP BY clause sometimes returned with an error. This issue has been resolved. |
VER-84674 |
Recovery |
Recovery from scratch reset cpe to 0, but mergeout was disabled for the projection whose cpe was 0. This restriction has been removed to allow concurrent data loading. |
VER-84783 |
ILM, Recovery |
During recovery, bulk loads blocked application of missed partition events. This issue has been resolved: now, missed drop partition events are applied by acquiring a D lock instead of an O lock. |
Issue Key |
Component |
Description |
VER-67030 |
Security |
ALTER TABLE...OWNER TO now properly changes the owner of table comments and projections. |
VER-72375 |
ComplexTypes, Database Designer Core |
When using DBD for encoding design on native tables with collection type columns (array/set), column statistics were ignored even when statistics for scalar type columns were available. This issue has been resolved: available statistics on scalar columns are now used in DBD encoding design. |
VER-73290 |
Documentation |
The documentation was unclear regarding proper usage of the coercion operator {{{}::!{}}}. This issue has been resolved: the documentation now states that this operator only applies to table data, otherwise it returns an error. |
VER-74015 |
Data load / COPY |
For profiling COPY FROM STDIN, the data_bytes_loaded column of the dc_execution_summaries table reported an incorrect value of zero. This issue has been resolved: the column now reflects the total number of bytes transferred from the client. |
VER-74675 |
Documentation |
Documentation's description of the algorithm that Database Designer uses to recommend replicated over segmented projections was incomplete. The issue has been resolved. |
VER-78428 |
UI - Management Console |
If a database with extended monitoring enabled went down, its Extended Monitoring page displayed no data. This issue has been resolved. |
VER-80367 |
Backup/DR |
VBR uploads to S3 storage sometimes returned with error messages that the upload failed. This issue has been resolved: on receiving these messages, VBR now retries the upload operation. |
VER-81135 |
Documentation |
Description of support for running multiple databases in the same cluster was updated. |
VER-81195 |
Documentation |
The documentation's descriptiopn of upgrade paths was updated. |
VER-81454 |
AMI |
The Vertica server AMI and SSH configurations were updated to use more secure ciphers. |
VER-81654 |
Installation Program |
Previously, the Vertica installer logged into each host twice during install process. It now logs in just once, reducing the installation time. |
VER-82240 |
Optimizer |
Queries such as INSERT SELECT with reused WITH queries that had multipart DML query plans returned with errors when executed on an EON cluster with subclusters . This issue has been resolved. |
VER-82430 |
Optimizer |
Previously, duplicate join predicates in an event series join query caused Vertica to crash. This issue has been resolved: users now see results as expected when submitting queries with repeating predicates. |
VER-82691 |
UI - Management Console |
Microsecond values for the TIMESTAMPTZ data type were truncated in the Management Console interface. This issue has been resolved. Now, database server timestamps with UTC offset values display properly. |
VER-82725 |
Client Drivers - JDBC, Sessions |
JDBC now properly runs PreparedStatement.execute() for insert statements with complex types. |
VER-82785 |
UI - Management Console |
Vertica packages for SUSE Linux Enterprise Server did not include the Apache Log4j JAR files required for extended monitoring. This issue has been resolved. |
VER-82900 |
Documentation |
vbr reference page was updated to note that --nodes option is only valid in an Enterprise-mode database. |
VER-82928 |
EON, Tuple Mover |
The MaxMrgOutROSSizeMB is now ignored for big resharded containers, allowing tuple mover to pick and remove the unnecessary data from big resharded containers one by one. |
VER-82959 |
Kafka Integration |
Under certain conditions, Vertica crashed when exporting data to Kafka. This issue has been resolved. |
VER-82984 |
EON |
On AWS, the control mode for Eon Mode databases must be set to pt2pt, not broadcast.
Previously, users had to manually set the control mode to pt2pt after migrating their Eon Mode database from on-prem to AWS. Vertica now detects whether the Eon Mode database is running on AWS, and if so, sets the control mode to pt2pt when running revive_db.
|
VER-83003 |
Control Networking |
Previously, addition of standby nodes changed the assignment of control nodes and number of fault groups. This issue has been resolved: standby nodes are no longer set as control nodes. |
VER-83068 |
Client Drivers - JDBC, Client Drivers - VSQL, Execution Engine |
In the 12.0.0 release, the default values of Vertica KeepAlive parameters were non-NULL values, which overrode the equivalent kernel TCP keepalive parameters. This issue has been resolved: now, all Vertica KeepAlive parameters are set to 0 (NULL), so effective settings are obtained from TCP keepalive parameters. |
VER-83076 |
Security |
In some cases, the LDAP Link service could fail to create users due circular assignment after the first synchronization. This has been fixed. |
VER-83150 |
UI - Management Console |
If you used a small subnet on AWS, SSH connections timed out when you ran the upgrade_vertica script. This issue has been resolved. |
VER-83200 |
Data Removal - Delete, Purge, Partitioning |
If insufficent resources were available to complete a background repartitioning task, the responsible thread failed to retry the operation. This issue has been resolved: a given background repartitioning request now has multiple chances to complete. |
VER-83214 |
SDK-Java |
Java SDK function setRowFromMap used to raise a exception when writing to BINARY type columns with the standard type coercion. The issue was fixed. Now standard type coercion successfully writes byte data to binary columns. |
VER-83225 |
DDL |
The REPLACE function occasionally produced a string that exceeded the maximum string length of 65000 octets, and returned with an error. This issue has been resolved: the function no longer creates a result string that exceeds 65000 octets. |
VER-83295 |
ComplexTypes, Optimizer |
The parameter "TryPruneUnusedDataEdges" toggles an optimization which tries to identify data edges of a query plan which are not necessary to compute the final result. This optimization would raise an INTERNAL error in rare situations with queries that perform a network resegment. This issue has been fixed. |
VER-83323 |
Admin Tools |
Works as expected: the installer option --accept-eula allows users to avoid admintools prompts. |
VER-83377 |
Optimizer |
The path_id for StorageUnion and Sort operators was sometimes reported to be -1. This issue has been resolved: path_id is now reported correctly. |
VER-83436 |
Catalog Engine |
System table vs_storage_reference_counts was not updating the counter values in column num_accesses. This issue has been resolved. |
VER-83517 |
Backup/DR |
Previously, the vbr replicate task returned an error if the source and destination databases shared the same database name and IP addresses. This issue has been resolved: these restrictions no longer apply. |
VER-83798 |
Documentation |
The section that describes the algorithm used by DBD to determine whether to recommend unsegmented projections contained a couple of typos. This issue has been resolved. |
VER-83809 |
Backup/DR |
Backup and restore on FIPS-enabled systems using object storage systems such as S3 could fail due to unavailability of the MD5 checksum implementation. These operations do not use MD5 for security, and this issue was resolved by flagging the uses of MD5 as not-for-security, thus enabling its use even with FIPS mode enabled. |
VER-83900 |
Optimizer |
If a query with an ORDER BY clause also contained a WITH clause with its own ORDER BY clause, and configuration {{{}EnableWITHTempRelReuseLimit=1{}}}, Vertica occasionally crashed in the late stages of query planning. This issue has been resolved. |
VER-83905 |
Cloud - Amazon, UI - Management Console |
In MC for AWS, the i4i.8xlarge instance had both NVMe volumes assigned to temp. This issue has been resolved: now, temp and depot each have one NVMe volume. |
Issue Key |
Component |
Description |
VER-74916 |
Optimizer |
REFRESH_COLUMNS on a table with a partition range projection returned an error if partitions in the target range were already merged with other partitions outside the specified range. REFRESH_COLUMNS now supports a Boolean ForceSplit parameter, by default set to true, which handles this case by forcing split partitioning. |
VER-78868 |
Cloud - Azure, UI - Management Console |
If an Eon mode database used Microsoft Azure, Management Console was unable to use the user-assigned identities when system-assigned identity was enabled. This issue has been resolved: now MC can use a user-assigned identity when a system-assigned identity is enabled. |
VER-78873 |
Cloud - Azure, UI - Management Console |
When provisioning new nodes on an Eon mode database running on Microsoft Azure and system-assigned identity was enabled, Management Console MC did not assign tags to support authentication of Vertica nodes. This issue has been resolved. |
VER-80763 |
Client Drivers - VSQL |
The vsql client now returns an error code when it encounters an error while running a long query--for example, the query exceeds the resource pool's RUNTIMECAP setting. |
VER-81774 |
Execution Engine, Optimizer |
If join output required sorting and was used by another merge join, but had multiple equivalent sort keys, the sort keys were not fully maintained. In this case, the query returned with incorrect results. This issue has been resolve by maintaining the necessary sort keys for merge join input. |
VER-81944 |
Cloud - Amazon, UI - Management Console |
When a previously used IP address was repeated from the subnet, Management Console failed to add hosts to the cluster. This issue is now resolved. |
VER-82093 |
Depot |
If the depot had no space to download a new file, the data loading plan did not write the file to the depot. Instead, it viewed the file as already in the depot, and incorrectly returned an error that the file size did not match the catalog. This issue has been resolved: the data loading plan no longer regards the absent file as in the depot. |
VER-82097 |
EON, ResourceManager |
Previously, altering the max size of resource pools for non-local subclusters sometimes returned an error. This issue has been resolved. |
VER-82151 |
ComplexTypes, FlexTable |
When parsing arrays of primitive types using the JSON parser, COPY failed with a message about records being too large. This issue has been resolved. |
VER-82198 |
Execution Engine |
The optimizer removes predicates from a query if expression analysis finds them to be true for entire storage containers. When the same predicate appeared multiple times in a given query, and one of those predicates passed expression analysis, sometimes the optimizer removed all instances of that predicate. This issue has been resolved: the optimizer no longer removes multiple instances of the same predicate when one of them passes expression analysis. |
VER-82290 |
Backup/DR |
If you restored a backup to another database with a different communal storage location, startup on the target database failed if the database's oid was assigned to another object. This issue has been resolved. |
VER-82316 |
AP-Geospatial |
In some cases, ST_GeomFromGeoJSON returned non-null results on null input. This issue has been resolved. |
VER-82327 |
ComplexTypes |
The array_count function read all fields of a complex array from storage. Doing so resulted in high cost estimates and sub-optimal query plans. This issue has been resolved: array_count now reads only one field. |
VER-82341 |
Data Export, Data load / COPY, Hadoop |
When reading partition values from file paths, values that contained a '/' character were being read incorrectly by Vertica. This issue has been resolved. |
VER-82395 |
Admin Tools |
pexpect inefficiently closed potential file descriptors when the nofile limit was high, attempting to close all file descriptors whether they were open or closed. This issue has been addressed: when the number of file descriptors is <= 2000, pexpect uses closerange to close the file descriptors, as it preforms better than close in a loop. When the the number of file descriptors > 2000, pexpect iterates over the file descriptors in /proc/self/fd, which contains open file descriptors only, and closes them. |
VER-82425 |
Cloud - Amazon, UI - Management Console |
After using Management Console to revive a database in the cloud, the database sometimes failed to start because of a lost+found directory in the catalog path. This issue is now resolved. |
VER-82439 |
Execution Engine |
Queries with multipart plans that produced large temporay relations sometimes failed to clean up temporary files. This issue has been resolved. |
VER-82444 |
Optimizer |
Queries with a UNION on EON subclusters resegmented grouped UNION leg outputs, even if UNION legs were segmented on group keys. This issue has been resolved, thereby improving query performance. |
VER-82445 |
Execution Engine |
In some queries with highly selective predicates, StorageMerge ran slower than expected, especially with higher CPU core counts. This issue has been resolved. |
VER-82486 |
Execution Engine |
If the REPLACE function was called with an empty string as the replacement (third) argument, it always returned a single-character result. This issue has been resolved. |
VER-82489 |
DDL - Table |
After renaming a table with ALTER TABLE, the DDL for its projections continued to reference the previous name as an alias of the new name. This issue has been resolved: when a table is renamed, the DDL of its projections is also updated. |
VER-82492 |
Database Designer Core |
When Database Designer processed queries that referenced non-table objects such as projections with pre-aggregated data, it sometimes failed or produced core dumps and database crashes. This issue has been resolved: now Database Designer skips queries of these types. |
VER-82502 |
Execution Engine |
The makeutf8 function sometimes caused undefined behavior when given maximum-length inputs for the argument column type. This issue has been resolved. |
VER-82572 |
Documentation |
The INSERT documentation erroneously cited an limitation of 2000 rows for multi-row INSERT statements. This limitation has been removed. |
VER-82576 |
Client Drivers - JDBC |
When JDBC connected to the server with BinaryTransfer and the JVM timezone had a historical or future Daylight Saving Time (DST) schedule, querying DST start dates in the JVM timezone sometimes returned incorrect data. This issue has been resolved; however, performance of BinaryTransfer for DATE data is worse than that of TextTransfer. |
VER-82622 |
Execution Engine |
The makeutf8 function sometimes caused undefined behavior when given maximum-length inputs for the argument column type. This issue has been resolved. |
VER-82676 |
Data load / COPY |
Flex table parsers did not reserve enough buffer space to correctly process certain inputs to NUMERIC-type columns. This issue has been resolved. |
VER-82683 |
DDL |
Vertica allows any partition expression that resolves to non-NULL values, even in cases where the expression columns originally contained NULL values. Conversely, Vertica no longer allows a partition expression that produces NULL values even if the expression columns contain no NULL values. |
VER-82729 |
Optimizer |
Queries with complex WITH clauses that used materialized WITH were running out of memory at the parsing stage. This issue has been resolved. |
VER-82730 |
Execution Engine |
When processing the LAST_VALUE() function, the sort column was initialized using the input column's data type. In cases where the data types of the input and sort columns differed, Vertica used the wrong null representation. This issue has been resolved: now, the sort column is correctly initialized as per the ORDER BY column data type. |
VER-86062 |
Security |
Previously, empty AD groups could not be revoked from Vertica users. This issue has been fixed. |
Issue Key |
Component |
Description |
VER-61257 |
Data load / COPY |
The load option "ON EACH NODE" was developed. If data to be loaded resides under the same file path on the filesystem of multiple nodes, a query can be run with "ON EACH NODE" instead of "path ON node1, path ON node2, ...". This will load data from the same file path on every node where the data is available. |
VER-67109 |
Catalog Engine |
In a database with large number of projections, querying system table vs_segment or views of vs_segment sometimes returned with an error that the MaxParsedQuerySizeMB limit had been exceeded. This issue has been resolved. |
VER-73674 |
Admin Tools |
Adding two nodes to a one-node enterprise database required the database to be rebalanced and made K-safe. Attempts to rebalance and achieve K-safety on the admintool command line ended in an error, while attempts to update K-safety in the admintools GUI also failed. These issues have been resolved. |
VER-79756 |
Client Drivers - VSQL, Security |
When TLSMode is set to require, vsql did not allow connections if the SSL certificates were expired. This issue has been resolved. |
VER-80448 |
UI - Management Console |
Some cookie features were not set properly in HTTP headers. This issue has been resolved. |
VER-80619 |
Backup/DR |
vbr calls to the AWS function DeleteObjects() did not gracefully handle SlowDown errors. This issue has been resolved by changing the boto3 retry logic, so SlowDown errors are less likely to occur. |
VER-80890 |
Catalog Engine |
Vertica 10.1 added support for bounds to array types. Addition of these bounds made changes to typemod, which represented column details such as VARCHAR length, and timestamp precision. The changes to typemod were not correctly accounted for in the metadata tables odbc_columns and jdbc_columns, which resulted in inconsistent TIMESTAMP column definitions. This issue has been resolved. |
VER-81033 |
Security |
OpenSSL has been upgraded to 1.1.1n. |
VER-81074 |
Execution Engine |
'= ANY' expressions on arrays expect an array literal expression argument. If the argument was a string_to_array function, Vertica tried to interpret it as an array literal and produced a wrong result. This issue has been resolved: before passing a string_to_array function as an argument to an ' = ANY' expression, Vertica now constant-folds the function into an array literal, so the '= ANY' expression' can read the argument as expected. |
VER-81121 |
Admin Tools |
Attempts to replace a down node in the admintools GUI or on the command line by calling db_replace_node or restart_node with the --force option failed. This issue has been resolved. |
VER-81214 |
UI - Management Console |
Previously, when the MC was configured to use LDAP authentication and the MC restarted or the machine rebooted, MC users would be unable to log in to the MC with LDAP authentication. The issue has been resolved. |
VER-81248 |
Admin Tools |
In previous releases, the default setting to rotate admintools.log was set to monthly, which was too infrequent for many clients, given the rapid growth of log size. This issue has been resolved: the default rotation frequency for admintools.log is now set to daily. A minimum log size limit is also set, which prevents rotation of logs if their size is less than 512kb. |
VER-81318 |
UI - Management Console |
In some circumstances, the MC browser session would timeout after a period of inactivity. This issue has been resolved. |
VER-81358 |
Execution Engine |
Addition of configuration parameter EnablePredicateRemoval introduced performance regressions in certain queries. This regression has been resolved. |
VER-81418 |
EON, Subscriptions |
When an Eon Mode database was in read-only mode, unsegmented projected queries failed. Now, unsegmented projected queries succeed if there are active replica shard subscriptions on at least one node. |
VER-81470 |
Tuple Mover |
Mergeout plans converted StorageMerge to StorageUnion+Sort, which slowed down mergeout and adversely affeced performance. This issue has been resolved: StorageMerge is no longer converrted to StorageUnion+Sort. |
VER-81474 |
Execution Engine |
Changed misleading counter name from "number of bytes read from communal storage" to "number of bytes read from persistent storage" |
VER-81526 |
Backup/DR |
When vbr failed to launch vertica-download-file or vertica-download-file ended with error, vbr raised an error because it tried to load the error message as json. This issue has been resolved with more error handling. |
VER-81572 |
Kubernetes |
In Kubernetes environments, it was possible to report the memory usage in the memory_usage view as a negative value. This occurred because the overall memory size in the system was reduced, but the other memory usage components, like bytes free, were not reduced. Because memory usage was reported at the host level, we reported the usage as a negative percentage when free memory was greater than total memory.
This issue has been resolved. Now, Kubernetes environments gather all memory information from cgroup information (/sys/fs/cgroup/memory) rather than /proc/memory.
|
VER-81639 |
Execution Engine |
Running analyze_statistics sometimes caused significant, unexpected slowdowns on concurrent queries. This slowdown was most noticeable on subsecond queries with StorageMerge operators in the plan. This issue has been resolved. |
VER-81684 |
Client Drivers - ODBC |
TIMESTAMPTZ and TIMETZ values map to SQL_TYPE_TIMESTAMP and SQL_TYPE_TIME types in the ODBC Specification and do not include the timezone. The ODBC driver handles them identically to the TIMESTAMP and TIMETZ types. |
VER-81692 |
Client Drivers - ODBC |
Previously, the ODBC driver could crash when using OCaml due to a bug in the Simba SDK. Version 12.0 Vertica ODBC driver uses an updated version of the Simba SDK that fixes this issue. |
VER-81694 |
Catalog Engine |
Queries on system view V_MONITOR.PARTITIONS occasionally returned with an error that the limit set by MaxParsedQuerySizeMB had been exceeded. This issue has been resolved. |
VER-81751 |
Execution Engine |
There was a performance issue when you executed a query on the VARBINARY(16) data type. This issue has been resolved. |
VER-81830 |
Security |
Users synced from LDAP with an obsolete DN are orphaned. Previously, if you dropped these orphaned users and recreated them with LDAP Link, their roles would not be preserved. This issue has been fixed; these types of users now retain their roles on recreation with LDAP Link. |
VER-81920 |
Tuple Mover |
For projections with partition grouping, Reshard Mergeout can now efficiently merge both resharded and regular containers placed in different layers of strata. |
VER-81986 |
Depot |
In Eon Mode, if the service shard was a non-participating primary subscriber, it could not fetch data from communal storage and cache it in the depot. This issue has been resolved. Now, if a node is down and another node temporarily served the shard, it fetches the file from communal storage and caches it in the depot without evicting any data. |
VER-82102 |
Security |
Previously, running LDAP_LINK_DRYRUN_SEARCH and LDAP_LINK_DRYRUN_SYNC without the optional parameter LDAPLinkJoinAttr caused the database to go down. This issue has been resolved. |
VER-82114 |
Catalog Engine, DDL, UDX |
Previously, CREATE PROCEDURE did not properly check for duplicate formal parameters in cases where parameter names differed only by case. This issue has been resolved. |