Version 2.1.0

Released on 2017/07/11.

Note

If you are upgrading a cluster, you must be running CrateDB Version 1.1.3 or higher before you upgrade to 2.1.0.

You cannot perform a Rolling Upgrade to this version. Any upgrade to this version will require a Full Restart Upgrade.

Consult the Upgrade Notes for 2.1.0 when upgrading.

Warning

Before upgrading, you should back up your data.

Changelog

Breaking Changes

  • CURRENT_USER, USER and SESSION_USER are now reserved words as we introduced them as system functions. These terms will not be available to be used as table, and column names and for already existing entities they will have to be quoted when referenced (otherwise the terms will be treated as function calls).
  • SELECT statements without any FROM items are no longer executed against the sys.cluster table, but against a virtual table with no columns. Queries including sys.cluster columns but no explicit FROM item will now result in a ColumnUnknownException.
  • The onModule() method had been removed from io.crate.Plugin interface; createGuiceModules() must be used instead.
  • srv and azure are no longer valid configuration options for discovery.type. Instead there is a new discovery.zen.hosts_provider settings which can be set to either srv or azure.

Packaging Changes

  • The sigar jar and object files have been moved from plugins/sigar to lib/sigar.

Changes

  • Updated Elasticsearch to 5.2.2.
  • Updated Crash to 0.21.3.
  • Updated the Admin UI to 1.4.1.
  • The table setting recovery.initial_shards has been deprecated. You may set gateway.local.initial_shards per node instead. CrateDB will continue to read the old setting but applications should be migrated to the new setting.
  • Added support for GRANT and REVOKE privileges for accessing the cluster. Currently supported privilege types: DQL, DML and DDL.
  • Added support for GRANT, DENY and REVOKE privileges for accessing the tables and schemas.
  • Added column username to sys.jobs and sys.jobs_log that contains the username under which the job was invoked.
  • Added SSL/TLS support for HTTP endpoints.
  • Added SSL/TLS support for PostgreSQL Wire Protocol.
  • Added new HBA setting ssl which allows to control whether users have to connect with ssl enabled or disabled.
  • Added support for client certificate authentication via HBA.
  • Added support for joins on virtual tables.
  • Queries which contain a correlated subquery will now result in an error stating that correlated subqueries are not supported, instead of a more confusing error indicating that a relation is unknown.
  • Extended the output of the EXPLAIN statement.

Upgrade Notes

Upgrading from version 2.0.x

If you’re using CrateDB’s BLOB storage and you need to run at least version 2.0.4 before upgrading to 2.1.0. Please consult the Version 2.0.4 release notes for further details.

Upgrading from versions prior to 2.0.0

Please consult the Upgrade Notes for 2.0.0.