Version 3.3.0
Released on 2019/03/27.
Note
If you are upgrading a cluster, you must be running CrateDB 2.0.4 or higher before you upgrade to 3.3.0.
We recommend that you upgrade to the latest 3.2 release before moving to 3.3.0.
You cannot perform a rolling upgrade to this version. Any upgrade to this version will require a full restart upgrade.
When restarting, CrateDB will migrate indexes to a newer format. Depending on the amount of data, this may delay node start-up time.
Please consult the Upgrade Notes before upgrading.
Warning
Tables that were created prior to upgrading to CrateDB 2.x will not function with 3.3 and must be recreated before moving to 3.3.x.
You can recreate tables using COPY TO
and COPY FROM
while running a 2.x release into a new table, or by inserting the data into a new table.
Before upgrading, you should back up your data.
Table of Contents
Upgrade Notes
Deprecated Settings and Features
The query frequency and average duration QueryStats MBean metrics has now been deprecated, in favour of the new total count and sum of durations metrics.
The cluster.graceful_stop.reallocate setting has been marked as deprecated. This setting was already being ignored, and setting the value to false
had no effect.
The node decommission using the USR2
signals has now been deprecated in favour of the ALTER CLUSTER DECOMISSION statement.
The CREATE INGEST RULE and DROP INGEST RULE rules have been marked as deprecated. Given that the only implementation (MQTT) was deprecated and will be removed, the framework itself will also be removed.
Changelog
Changes
New Features
- Exposed the sum of durations, total, and failed count metrics under the QueryStats MBean for
QUERY
,INSERT
,UPDATE
,DELETE
,MANAGEMENT
,DDL
, andCOPY
statement types. - Exposed the sum of statement durations, total, and failed count classified by statement type under the
sum_of_durations
,total_count
andfailed_count
columns, respectively, in the Jobs Metrics table.
SQL Improvements
- Added
current_schemas(boolean)
scalar function which will return the names of schemas in thesearch_path
. - Added support for the
first_value
,last_value
, andnth_value
window functions as enterprise features. - Added the
DROP ANALYZER
statement to support removal of custom analyzer definitions from the cluster. - Output the custom analyzer, tokenizer, token_filter, and char_filter definition inside the
information_schema.routines.routine_definition
column. - Added support for the
row_number()
window function. - Added support for using any expression in the operand of a
CASE
clause. - Fix quoting of identifiers that contain leading digits or spaces when printing relation or column names.
PostgreSQL Compatibility
- Added
pg_type
columns:typlen
,typarray
,typnotnull
, andtypnamespace
for improved PostgreSQL compatibility. - Added a
pg_description
table to thepg_catalog
schema for improved PostgreSQL compatibility. - Fixed function resolution for PostgreSQL functions
pg_backend_pid
,pg_get_expr
, andcurrent_database
when the schema prefixpg_catalog
is included.
Database Administration
- Added a node check for the JVM version number.
- Added
ALTER CLUSTER DECOMMISSION <nodeId | nodeName>
statement that triggers the existing node decommission functionality. - Changed the trial license introduced in 3.2 to no longer have an expiration date, but instead be limited to three nodes. See Enterprise Features.
- The Usage Data Collector now includes information about the available number of processors.
Deprecations
- The query frequency and average duration QueryStats MBean metrics has been deprecated in favour of the new total count and sum of durations metrics.
- Marked the cluster.graceful_stop.reallocate setting as deprecated. This setting was already being ignored, setting the value to
false
has no effect. - The node decommission using the
USR2
signal has been deprecated in favour of the ALTER CLUSTER DECOMISSION statement. - Marked CREATE INGEST RULE and DROP INGEST RULE as deprecated. Given that the only implementation (MQTT) was deprecated and will be removed, the framework itself will also be removed.
Other
- Buffer the file output of
COPY TO
operations to improve performance by not writing to disk on every row.