Version 3.1.0
Note
If you are upgrading a cluster, you must be running CrateDB 2.0.4 or higher before you upgrade to 3.1.0.
We recommend that you upgrade to the latest 3.0 release before moving to 3.1.0.
You cannot perform a rolling upgrade to this version. Any upgrade to this version will require a .
When restarting, CrateDB will migrate indexes to a newer format. Depending on the amount of data, this may delay node start-up time.
Warning
Tables that were created prior to upgrading to CrateDB 2.x will not function with 3.1 and must be recreated before moving to 3.1.x.
You can recreate tables using 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 .
Table of contents
- Crash is no longer bundled with the
CrateDB
tarball distribution.
Changes
Improved performance and memory utilisation for queries against the
sys
tables.Improved performance and memory utilisation for unsorted distributed
GROUP BY
and aggregations statements by executing the reduce operation in an incremental way.Improved performance and memory utilisation of
GROUP BY
statements when the key column is a singlestring
,byte
,short
,int
orlong
.Exposed the cluster state version in the
sys.nodes
table under thecluster_state_version
column and under theNodeInfo
MXBean in JMX.Added a new
ThreadPools
MXBean for JMX which exposes statistics of all used thread pools.Changed the PostgreSQL wire protocol binary encoding format for columns to use the newer
int64
format. This will enable compatibility with clients likepgx
.Added support for multi line SQL comments, e.g.
/* multi line */
.Improved performance of queries using an array access inside the
WHERE
clause. E.g.:Added the full PostgreSQL syntax of the
BEGIN
statement and theCOMMIT
statement. This improves the support for clients that are based on the PostgreSQL wire protocol, such as the Golanglib/pg
andpgx
clients. TheBEGIN
andCOMMIT
statements and any of their parameters are simply ignored.-
SELECT * FROM t
WHERE NOT IGNORE3VL(5 = ANY(t.int_array_col))
Added a new MBean for JMX which exposes the number of open connections per protocol.
Added support for
COPY FROM ... RETURN SUMMARY
which will return a result set with detailed error reporting of imported rows.Added a new
stats.jobs_log_filter
setting which can be used to control what kind of entries are recorded into thesys.jobs_log
table. In addition there is a newstats.jobs_log_persistent_filter
setting which can be used to record entries also in the regular CrateDB log file.Exposed statement classification in
sys.jobs_log
table.Added a
sys.jobs_metrics
table which contains query latency information.The setting
es.api.enabled
has been marked as deprecated and will be removed in a future version. Once removed it will no longer be possible to use the Elasticsearch API. Please create a feature request if you’re using the ES API and cannot use the SQL interface as substitute.Introduced the
EXPLAIN ANALYZE
statement for query profiling.Added
typbasetype
column to thepg_catalog.pg_type
table.Added support for the
SHOW TRANSACTION_ISOLATION
statement.Added
TimeZone
parameter response to PostgreSQL Wire Protocol.