-
Notifications
You must be signed in to change notification settings - Fork 546
/
5.4.6.rst
79 lines (53 loc) · 2.68 KB
/
5.4.6.rst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
.. _version_5.4.6:
=============
Version 5.4.6
=============
Released on 2023-11-30.
.. NOTE::
If you are upgrading a cluster, you must be running CrateDB 4.0.2 or higher
before you upgrade to 5.4.6.
We recommend that you upgrade to the latest 5.3 release before moving to
5.4.6.
A rolling upgrade from 5.3.x to 5.4.6 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`_.
.. _back up your data: https://crate.io/docs/crate/reference/en/latest/admin/snapshots.html
.. _inserting the data into a new table: https://crate.io/docs/crate/reference/en/latest/admin/system-information.html#tables-need-to-be-recreated
.. rubric:: Table of Contents
.. contents::
:local:
See the :ref:`version_5.4.0` release notes for a full list of changes in the
5.4 series.
Fixes
=====
- Fixed an issue that caused queries with a ``NOT`` expression in the
``WHERE`` clause to fail evaluating ``NULL`` correctly.
- Fixed an issue that caused the value for generated primary key columns to
evaluate to ``NULL`` in ``INSERT INTO .. ON CONFLICT`` statements if the
column wasn't part of the target column list.
- Creating a table that uses a table-function as part of a default expression or
generated expression now results in an error on table creation, instead of
never inserting records due to runtime failures.
- Improved the error message when using ``COPY FROM`` with
``wait_for_completion=false`` and ``RETURN SUMMARY``. It now reports that the
combination is not supported instead of running into a ``ClassCastException``.
- Fixed an issue that caused queries with a ``NOT (a AND b)`` expression
in the ``WHERE`` clause to not evaluate correctly with ``NULL`` values.
- Fixed an issue that caused queries with a ``NOT`` or ``!=`` on a ``CASE``
expression containing a nullable column to exclude ``NULL`` entries.
- Fixed an issue that caused the hash-join operator generate invalid hashes which
lead to a broken join operation when there were more than two relations
involved e.g.:::
SELECT * FROM t1, t2, t3 WHERE t3.c = t1.a AND t3.c = t2.b AND t1.a = t2.b;
would generate the logical plan:::
HashJoin[(t3.c = t2.b AND t1.a = t2.b)]
├ HashJoin[(t3.c = t1.a)]
│ ├ Collect[doc.t3 | [c] | true]
│ └ Collect[doc.t1 | [a] | true]
└ Collect[doc.t2 | [b] | true]
The hash-symbol generation for the join `t3.c = t2.b AND t1.a = t2.b` was
broken and would not join the data.