Version 5.2.4¶
Released on 2023-03-14.
Note
If you are upgrading a cluster, you must be running CrateDB 4.0.2 or higher before you upgrade to 5.2.4.
We recommend that you upgrade to the latest 5.1 release before moving to 5.2.4.
A rolling upgrade from 5.1.x to 5.2.4 is supported. Before upgrading, you should back up your data.
Warning
Tables that were created before CrateDB 4.x will not function with 5.x and must be recreated before moving to 5.x.x.
You can recreate tables using COPY TO and COPY FROM or by
inserting the data into a new table.
Table of Contents
See the Version 5.2.0 release notes for a full list of changes in the 5.2 series.
Fixes¶
Fixed an issue that caused
JOINqueries to fail with an internal error, whenUSINGis used to define the join condition in combination with a nested join e.g.:SELECT * FROM t1 JOIN (t2 JOIN t3 ON t2.y = t3.y) USING(x)
Furthermore, validation of
USINGwas added, so that a meaningful error message is thrown in case it’s misused.Fixed an issue that caused nested joins to fail with an internal error e.g.:
SELECT * FROM t1 JOIN (t2 JOIN t3 ON t2.x = t3.x) ON t1.x = t2.x
Fixed an issue that could cause errors for queries with aggregations and
UNION, e.g.SELECT a, avg(c), b FROM t1 GROUP BY 1, 3 UNION SELECT x, avg(z), y FROM t2 GROUP BY 1, 3 UNION SELECT i, avg(k), j FROM t3 GROUP BY 1, 3
Fixed a performance regression for
IS NOT NULLexpressions on object columns which was introduced in 5.0.3 and 5.1.1.Fixed an issue that could cause
DELETE FROMstatements which match a large amount of records to cause a node to crash with an out of memory error.Fixed an issue that caused expressions like
<column> != ANY(<array-literal>)to match on partitions where the column didn’t exist or on records where<column>had anullvalue.Fixed an issue that allowed users to execute user-defined functions without
DQLprivileges on the schemas that the functions are defined in.Fixed an issue that translated
ColumnUnknownExceptionto a misleadingSchemaUnknownExceptionwhen users withoutDQLprivilege ondocschema queried unknown columns from table functions. An exampleSELECT unknown_col FROM abs(1); SchemaUnknownException[Schema 'doc' unknown]
Fixed an issue that translated an
AmbiguousColumnExceptionto a misleadingIllegalStateExceptionwhen aliased columns are queried that are also ambiguous. An exampleSELECT r FROM (SELECT a AS r, a AS r FROM t) AS q IllegalStateException[Symbol 'io.crate.expression.symbol.Symbol' not supported] // r is an alias of a and is ambiguous from the perspective of the outer query
Fixed an issue that translated
UnsupportedOperationExceptionto a misleadingMissingPrivilegeExceptionwhen executing functions with invalid names or signatures.Fixed an issue causing nested join statements using the
NESTED LOOPplan to return incorrect results in some scenarios when issued on a multi-node cluster.