Version 4.6.0
Released on 2021-07-13.
Note
If you are upgrading a cluster, you must be running CrateDB 4.0.2 or higher before you upgrade to 4.6.0.
We recommend that you upgrade to the latest 4.3 release before moving to 4.6.0.
A rolling upgrade from 4.5.x to 4.6.0 is supported.
Before upgrading, you should back up your data.
Deprecations
- Deprecated the node.max_local_storage_nodes setting.
Changes
Performance Improvements
- Improved the performance of the :ref
hyperloglog\_distinct <aggregation-hyperloglog-distinct>aggregation function. - Improved the performance of
SELECTstatements withWHEREconditions that are in the form ofWHERE COL=COL. - Improved the performance of
INSERT FROM querystatements where thequerycontains aGROUP BYclause. - Improved the internal throttling mechanism used for
INSERT FROM QUERYandCOPY FROMoperations. This should lead to these queries utilizing more resources if the cluster can spare them. - Added an optimization that improves the performance of
count()aggregations on object columns that have at least one inner column with aNOT NULLconstraint.
SQL Statements and Compatibility
- Added the bit(n) data type.
- CrateDB now accepts the
START TRANSACTIONstatement for PostgreSQL wire protocol compatibility. However, CrateDB does not support transactions and will silently ignore this statement. - Added support for directory-level wild card expansion for URIs passed to
COPY FROMstatements.
New Scalars
- Added array_to_string scalar function that concatenates array elements into a single string using a separator and an optional null-string.
- Added array_min and array_max scalar functions returning the minimal and maximal element in array respectively.
- Added the array_sum scalar function that returns the sum of all elements in an array.
- Added the array_avg scalar function that returns the average of all elements in an array.
Administration and Operations improvements
- Users can now read tables within the
pg_catalogschema without explicitDQLpermission. They will only see records the user has privileges on. - Users with AL privileges (or DDL on both tables) can now run the following ALTER CLUSTER commands:
ALTER CLUSTER SWAP TABLE source TO target,ALTER CLUSTER REROUTE RETRY FAILED,ALTER CLUSTER GC DANGLING ARTIFACTS. - Added support for encrypting node-to-node communication.
- Changed the privileges model to allow users with
DDLprivileges on a table to use the OPTIMIZE TABLE statement. - Included the shard information for closed tables in
sys.shardstable. - Added a
closedcolumn to sys-shards exposing the state of the table associated with the shard. - Added support for reading
cgroupinformation in thecgroup v2format. - Added support of hostnames in HBA configuration.
Administration Console
- Removed all analytics (UDC, Segment)
- Removed the “Notifications” section in the statusbar
- Removed min-width for columns in console to reduce scrolling
- Changed syntax highlighting in console. Keywords in double quotes are now longer highlighted. Types are highlighted with a different color.
- Activated codemirror code hints for keywords.
- Changed the look of the Scrollbar to appear more modern.
- Added length limit for
varchar(n)andbit(n)types in table view.
