Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for distributed hypertables #1923

Merged
merged 227 commits into from
May 27, 2020
Merged

Conversation

erimatnor
Copy link
Contributor

This PR adds support for distributed hypertables, which allows hypertables to scale out across multiple nodes. Distributed hypertables support high ingest rates and push-down aggregates for scalable query performance. Flexible node management allows distributed hypertables to grow across new data nodes when needed. Initial support for native replication at the chunk level is provided, although this feature currently lacks the ability to redistribute chunks in case of node failures.

The current implementation has many more limitations that will be addressed over time. These include (but are not limited to):

  • Backup and restore needs improvements to ensure consistent restore points across all nodes.
  • HA and replication has to be managed node-by-node. This will be improved with native replication.
  • No push-down JOINs. Instead, joins with data will happen at the access node.
  • Single "frontend" access node.
  • No "official" support for continuous aggregates and compression.
  • No automatic synchronization of roles and permissions across nodes.

@erimatnor erimatnor added this to the 2.0.0 milestone May 20, 2020
@erimatnor erimatnor requested a review from a team as a code owner May 20, 2020 07:52
@erimatnor erimatnor requested review from pmwkaa, k-rus and WireBaron and removed request for a team May 20, 2020 07:52
@erimatnor erimatnor force-pushed the multinode branch 5 times, most recently from 6209da9 to 80074a5 Compare May 20, 2020 12:27
Copy link
Contributor

@mkindahl mkindahl left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have done a brief look over it and not really found anything that seems incorrect. I have made a few assumptions:

  • I have ignored any entirely new files assuming that you have done a comparison of the file here with the file in multinode branch.

  • I have ignored all result output files since the tests will capture this.

tsl/src/remote/connection_cache.c Show resolved Hide resolved
src/hypercube.h Outdated Show resolved Hide resolved
src/hypertable.c Show resolved Hide resolved
src/hypertable.c Show resolved Hide resolved
src/telemetry/telemetry.c Show resolved Hide resolved
test/sql/telemetry.sql Outdated Show resolved Hide resolved
tsl/src/bgw_policy/CMakeLists.txt Show resolved Hide resolved
tsl/src/bgw_policy/job.c Show resolved Hide resolved
tsl/src/remote/connection_cache.c Show resolved Hide resolved
tsl/src/remote/connection_cache.c Show resolved Hide resolved
@erimatnor erimatnor force-pushed the multinode branch 5 times, most recently from 85289c8 to 3990a97 Compare May 20, 2020 19:53
Copy link
Member

@svenklemm svenklemm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One question regarding a check you removed in constraint aware append

@erimatnor erimatnor force-pushed the multinode branch 2 times, most recently from c6a6ef1 to ef714a9 Compare May 20, 2020 20:58
Copy link
Contributor

@pmwkaa pmwkaa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a couple of minors and observations, anything from the review should not block the merge or should be fixed in this PR I think.

Looks great overall, excited to see it merged! :)

CREATE OR REPLACE FUNCTION _timescaledb_internal.rxid_out(rxid) RETURNS cstring
AS '@MODULE_PATHNAME@', 'ts_remote_txn_id_out' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;

CREATE TYPE rxid (
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds like a quite generic type name, maybe we should add some prefix to it in the future and place it in the _timescaledb_internal schema as well?

src/build-defs.cmake Outdated Show resolved Hide resolved
src/cache_invalidate.c Outdated Show resolved Hide resolved
src/cache_invalidate.c Outdated Show resolved Hide resolved
@@ -161,6 +180,13 @@ static const TableIndexDef catalog_table_index_definitions[_MAX_CATALOG_TABLES]
[CHUNK_INDEX_HYPERTABLE_ID_HYPERTABLE_INDEX_NAME_IDX] = "chunk_index_hypertable_id_hypertable_index_name_idx",
},
},
[CHUNK_DATA_NODE] = {
.length = _MAX_CHUNK_DATA_NODE_INDEX,
.names = (char *[]) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like this is a non-standard C conversion. I wonder how this compares to the PostgreSQL codestyle

src/cross_module_fn.h Show resolved Hide resolved
#define ERRCODE_TS_NODE_EXISTS MAKE_SQLSTATE('T', 'S', '1', '2', '0')
#define ERRCODE_TS_USER_EXISTS MAKE_SQLSTATE('T', 'S', '1', '3', '0')
#define ERRCODE_TS_TABLESPACE_ALREADY_ATTACHED MAKE_SQLSTATE('T', 'S', '1', '4', '0')
#define ERRCODE_TS_TABLESPACE_NOT_ATTACHED MAKE_SQLSTATE('T', 'S', '1', '5', '0')
#define ERRCODE_TS_DUPLICATE_DIMENSION MAKE_SQLSTATE('T', 'S', '1', '6', '0')
#define ERRCODE_TS_NO_DATA_NODES MAKE_SQLSTATE('T', 'S', '1', '7', '0')
#define ERRCODE_TS_DATA_NODE_ASSIGNMENT_ALREADY_EXISTS MAKE_SQLSTATE('T', 'S', '1', '7', '1')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Those error codes are not described in the comment message above

@@ -10,6 +10,7 @@
* loader*/

#define EXTENSION_NAME "timescaledb"
#define EXTENSION_FDW_NAME "timescaledb_fdw"
#define TSL_LIBRARY_NAME "timescaledb-tsl"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we still need this separation in the future?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, due to license differences.

@@ -29,6 +31,21 @@ extern TSDLLEXPORT char *ts_guc_license_key;
extern char *ts_last_tune_time;
extern char *ts_last_tune_version;
extern char *ts_telemetry_cloud;
extern TSDLLEXPORT bool ts_guc_enable_2pc;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a good reason to keep this tweak beside testing?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe not. Still, 1pc remains an option for potentially faster inserts at the risk of inconsistencies in case of failures. Unknown what the effect on performance is though.

src/loader/loader.c Show resolved Hide resolved
Copy link
Contributor

@WireBaron WireBaron left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Going through this at a high level, I didn't see any serious issues.

Copy link
Contributor

@k-rus k-rus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest to drop notification on private multinode branch of travis CRON job into Slack channel as part of this PR.

Sorry, it's already dropped as it is not part of this PR :)

@k-rus k-rus self-requested a review May 23, 2020 09:05
src/cache.c Outdated Show resolved Hide resolved
src/chunk.c Outdated Show resolved Hide resolved
svenklemm added a commit to svenklemm/timescaledb that referenced this pull request Oct 5, 2020
This release adds major new features and bugfixes since the 1.7.4 release.
We deem it moderate priority for upgrading.

This release adds the long-awaited support for distributed hypertables to
TimescaleDB. This release also adds support for user-defined actions allowing
users to define actions that are run by the TimescaleDB automation framework.

In addition to these major new features, the 2.0 branch introduces _breaking_ changes
to APIs and existing features, such as continuous aggregates. These changes are not
backwards compatible and might require changes to clients and/or scripts that rely on
the previous APIs. Please review our updated documentation and do proper testing to
ensure compatibility with your existing applications.

The noticeable breaking changes in APIs are:
- Function rename and arguments redesign for compression and retention policies
- Creating continuous aggregate is split into 2 steps: `CREATE MATERIALIZED VIEW`
  to create a continuous aggregate view, and `add_continuous_aggregate_policy`
  to create the actual policy
- Rename and argument redesign for functions to manipulate running policies
- Replacing several information views with policy information with general views,
  which covers policies and user-defined actions
- Redesign of information views

This release candidate is upgradable, so if you are on a previous release (e.g., 1.7.4)
you can upgrade to the release candidate and later expect to be able to upgrade to the
final 2.0 release. However, please carefully consider your compatibility requirements
_before_ upgrading.

**Major Features**
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Minor Features**
* timescale#2011 Constify TIMESTAMPTZ OP INTERVAL in constraints
* timescale#2105 Support moving compressed chunks

**Bugfixes**
* timescale#1843 Improve handling of "dropped" chunks
* timescale#1886 Change ChunkAppend leader to use worker subplan
* timescale#2116 Propagate privileges from hypertables to chunks
* timescale#2263 Fix timestamp overflow in time_bucket optimization
* timescale#2270 Fix handling of non-reference counted TupleDescs in gapfill
* timescale#2325 Fix rename constraint/rename index
* timescale#2370 Fix detection of hypertables in subqueries
* timescale#2376 Fix caggs width expression handling on int based hypertables
* timescale#2416 Check insert privileges to create chunk
* timescale#2428 Allow owner change of continuous aggregate
* timescale#2436 Propagate grants in continuous aggregates
svenklemm added a commit to svenklemm/timescaledb that referenced this pull request Oct 5, 2020
This release adds major new features and bugfixes since the 1.7.4 release.
We deem it moderate priority for upgrading.

This release adds the long-awaited support for distributed hypertables to
TimescaleDB. This release also adds support for user-defined actions allowing
users to define actions that are run by the TimescaleDB automation framework.

In addition to these major new features, the 2.0 branch introduces _breaking_ changes
to APIs and existing features, such as continuous aggregates. These changes are not
backwards compatible and might require changes to clients and/or scripts that rely on
the previous APIs. Please review our updated documentation and do proper testing to
ensure compatibility with your existing applications.

The noticeable breaking changes in APIs are:
- Function rename and arguments redesign for compression and retention policies
- Creating continuous aggregate is split into 2 steps: `CREATE MATERIALIZED VIEW`
  to create a continuous aggregate view, and `add_continuous_aggregate_policy`
  to create the actual policy
- Rename and argument redesign for functions to manipulate running policies
- Replacing several information views with policy information with general views,
  which covers policies and user-defined actions
- Redesign of information views

This release candidate is upgradable, so if you are on a previous release (e.g., 1.7.4)
you can upgrade to the release candidate and later expect to be able to upgrade to the
final 2.0 release. However, please carefully consider your compatibility requirements
_before_ upgrading.

**Major Features**
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Minor Features**
* timescale#2011 Constify TIMESTAMPTZ OP INTERVAL in constraints
* timescale#2105 Support moving compressed chunks

**Bugfixes**
* timescale#1843 Improve handling of "dropped" chunks
* timescale#1886 Change ChunkAppend leader to use worker subplan
* timescale#2116 Propagate privileges from hypertables to chunks
* timescale#2263 Fix timestamp overflow in time_bucket optimization
* timescale#2270 Fix handling of non-reference counted TupleDescs in gapfill
* timescale#2325 Fix rename constraint/rename index
* timescale#2370 Fix detection of hypertables in subqueries
* timescale#2376 Fix caggs width expression handling on int based hypertables
* timescale#2416 Check insert privileges to create chunk
* timescale#2428 Allow owner change of continuous aggregate
* timescale#2436 Propagate grants in continuous aggregates
svenklemm added a commit to svenklemm/timescaledb that referenced this pull request Oct 5, 2020
This release adds major new features and bugfixes since the 1.7.4 release.
We deem it moderate priority for upgrading.

This release adds the long-awaited support for distributed hypertables to
TimescaleDB. With 2.0, users can run multiple instances of TimescaleDB,
configured so that one serves as an access node and multiple others as data
nodes, so that all queries for a distributed hypertable are issued to the access
node, but inserted data and queries are pushed down across data nodes for
greater scale and performance.

In addition to these major new features, the 2.0 branch introduces _breaking_ changes
to APIs and existing features, such as continuous aggregates. These changes are not
backwards compatible and might require changes to clients and/or scripts that rely on
the previous APIs. Please review our updated documentation and do proper testing to
ensure compatibility with your existing applications.

The noticeable breaking changes in APIs are:
- Redefined functions for policies
- A continuous aggregate is now created with `CREATE MATERIALIZED VIEW`
  instead of `CREATE VIEW` and automated refreshing requires adding a policy
  via `add_continuous_aggregate_policy`
- Redesign of informational views, including new (and more general) views for
  information about policies and user-defined actions

This release candidate is upgradable, so if you are on a previous release (e.g., 1.7.4)
you can upgrade to the release candidate and later expect to be able to upgrade to the
final 2.0 release. However, please carefully consider your compatibility requirements
_before_ upgrading.

**Major Features**
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Minor Features**
* timescale#2011 Constify TIMESTAMPTZ OP INTERVAL in constraints
* timescale#2105 Support moving compressed chunks

**Bugfixes**
* timescale#1843 Improve handling of "dropped" chunks
* timescale#1886 Change ChunkAppend leader to use worker subplan
* timescale#2116 Propagate privileges from hypertables to chunks
* timescale#2263 Fix timestamp overflow in time_bucket optimization
* timescale#2270 Fix handling of non-reference counted TupleDescs in gapfill
* timescale#2325 Fix rename constraint/rename index
* timescale#2370 Fix detection of hypertables in subqueries
* timescale#2376 Fix caggs width expression handling on int based hypertables
* timescale#2416 Check insert privileges to create chunk
* timescale#2428 Allow owner change of continuous aggregate
* timescale#2436 Propagate grants in continuous aggregates
svenklemm added a commit to svenklemm/timescaledb that referenced this pull request Oct 5, 2020
This release adds major new features and bugfixes since the 1.7.4 release.
We deem it moderate priority for upgrading.

This release adds the long-awaited support for distributed hypertables to
TimescaleDB. With 2.0, users can run multiple instances of TimescaleDB,
configured so that one serves as an access node and multiple others as data
nodes, so that all queries for a distributed hypertable are issued to the access
node, but inserted data and queries are pushed down across data nodes for
greater scale and performance.

This release also adds support for user-defined actions allowing users to
define actions that are run by the TimescaleDB automation framework.

In addition to these major new features, the 2.0 branch introduces _breaking_ changes
to APIs and existing features, such as continuous aggregates. These changes are not
backwards compatible and might require changes to clients and/or scripts that rely on
the previous APIs. Please review our updated documentation and do proper testing to
ensure compatibility with your existing applications.

The noticeable breaking changes in APIs are:
- Redefined functions for policies
- A continuous aggregate is now created with `CREATE MATERIALIZED VIEW`
  instead of `CREATE VIEW` and automated refreshing requires adding a policy
  via `add_continuous_aggregate_policy`
- Redesign of informational views, including new (and more general) views for
  information about policies and user-defined actions

This release candidate is upgradable, so if you are on a previous release (e.g., 1.7.4)
you can upgrade to the release candidate and later expect to be able to upgrade to the
final 2.0 release. However, please carefully consider your compatibility requirements
_before_ upgrading.

**Major Features**
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Minor Features**
* timescale#2011 Constify TIMESTAMPTZ OP INTERVAL in constraints
* timescale#2105 Support moving compressed chunks

**Bugfixes**
* timescale#1843 Improve handling of "dropped" chunks
* timescale#1886 Change ChunkAppend leader to use worker subplan
* timescale#2116 Propagate privileges from hypertables to chunks
* timescale#2263 Fix timestamp overflow in time_bucket optimization
* timescale#2270 Fix handling of non-reference counted TupleDescs in gapfill
* timescale#2325 Fix rename constraint/rename index
* timescale#2370 Fix detection of hypertables in subqueries
* timescale#2376 Fix caggs width expression handling on int based hypertables
* timescale#2416 Check insert privileges to create chunk
* timescale#2428 Allow owner change of continuous aggregate
* timescale#2436 Propagate grants in continuous aggregates
svenklemm added a commit to svenklemm/timescaledb that referenced this pull request Oct 5, 2020
This release adds major new features and bugfixes since the 1.7.4 release.
We deem it moderate priority for upgrading.

This release adds the long-awaited support for distributed hypertables to
TimescaleDB. With 2.0, users can run multiple instances of TimescaleDB,
configured so that one serves as an access node and multiple others as data
nodes, so that all queries for a distributed hypertable are issued to the access
node, but inserted data and queries are pushed down across data nodes for
greater scale and performance.

This release also adds support for user-defined actions allowing users to
define actions that are run by the TimescaleDB automation framework.

In addition to these major new features, the 2.0 branch introduces _breaking_ changes
to APIs and existing features, such as continuous aggregates. These changes are not
backwards compatible and might require changes to clients and/or scripts that rely on
the previous APIs. Please review our updated documentation and do proper testing to
ensure compatibility with your existing applications.

The noticeable breaking changes in APIs are:
- Redefined functions for policies
- A continuous aggregate is now created with `CREATE MATERIALIZED VIEW`
  instead of `CREATE VIEW` and automated refreshing requires adding a policy
  via `add_continuous_aggregate_policy`
- Redesign of informational views, including new (and more general) views for
  information about policies and user-defined actions

This release candidate is upgradable, so if you are on a previous release (e.g., 1.7.4)
you can upgrade to the release candidate and later expect to be able to upgrade to the
final 2.0 release. However, please carefully consider your compatibility requirements
_before_ upgrading.

**Major Features**
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Minor Features**
* timescale#2011 Constify TIMESTAMPTZ OP INTERVAL in constraints
* timescale#2105 Support moving compressed chunks

**Bugfixes**
* timescale#1843 Improve handling of "dropped" chunks
* timescale#1886 Change ChunkAppend leader to use worker subplan
* timescale#2116 Propagate privileges from hypertables to chunks
* timescale#2263 Fix timestamp overflow in time_bucket optimization
* timescale#2270 Fix handling of non-reference counted TupleDescs in gapfill
* timescale#2325 Fix rename constraint/rename index
* timescale#2370 Fix detection of hypertables in subqueries
* timescale#2376 Fix caggs width expression handling on int based hypertables
* timescale#2416 Check insert privileges to create chunk
* timescale#2428 Allow owner change of continuous aggregate
* timescale#2436 Propagate grants in continuous aggregates
svenklemm added a commit to svenklemm/timescaledb that referenced this pull request Oct 5, 2020
This release adds major new features and bugfixes since the 1.7.4 release.
We deem it moderate priority for upgrading.

This release adds the long-awaited support for distributed hypertables to
TimescaleDB. With 2.0, users can create distributed hypertables across
multiple instances of TimescaleDB, configured so that one instance serves
as an access node and multiple others as data nodes. All queries for a
distributed hypertable are issued to the access node, but inserted data
and queries are pushed down across data nodes for greater scale and
performance.

This release also adds support for user-defined actions allowing users to
define actions that are run by the TimescaleDB automation framework.

In addition to these major new features, the 2.0 branch introduces _breaking_ changes
to APIs and existing features, such as continuous aggregates. These changes are not
backwards compatible and might require changes to clients and/or scripts that rely on
the previous APIs. Please review our updated documentation and do proper testing to
ensure compatibility with your existing applications.

The noticeable breaking changes in APIs are:
- Redefined functions for policies
- A continuous aggregate is now created with `CREATE MATERIALIZED VIEW`
  instead of `CREATE VIEW` and automated refreshing requires adding a policy
  via `add_continuous_aggregate_policy`
- Redesign of informational views, including new (and more general) views for
  information about policies and user-defined actions

This release candidate is upgradable, so if you are on a previous release (e.g., 1.7.4)
you can upgrade to the release candidate and later expect to be able to upgrade to the
final 2.0 release. However, please carefully consider your compatibility requirements
_before_ upgrading.

**Major Features**
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Minor Features**
* timescale#2011 Constify TIMESTAMPTZ OP INTERVAL in constraints
* timescale#2105 Support moving compressed chunks

**Bugfixes**
* timescale#1843 Improve handling of "dropped" chunks
* timescale#1886 Change ChunkAppend leader to use worker subplan
* timescale#2116 Propagate privileges from hypertables to chunks
* timescale#2263 Fix timestamp overflow in time_bucket optimization
* timescale#2270 Fix handling of non-reference counted TupleDescs in gapfill
* timescale#2325 Fix rename constraint/rename index
* timescale#2370 Fix detection of hypertables in subqueries
* timescale#2376 Fix caggs width expression handling on int based hypertables
* timescale#2416 Check insert privileges to create chunk
* timescale#2428 Allow owner change of continuous aggregate
* timescale#2436 Propagate grants in continuous aggregates
@svenklemm svenklemm mentioned this pull request Oct 5, 2020
svenklemm added a commit that referenced this pull request Oct 5, 2020
This release adds major new features and bugfixes since the 1.7.4 release.
We deem it moderate priority for upgrading.

This release adds the long-awaited support for distributed hypertables to
TimescaleDB. With 2.0, users can create distributed hypertables across
multiple instances of TimescaleDB, configured so that one instance serves
as an access node and multiple others as data nodes. All queries for a
distributed hypertable are issued to the access node, but inserted data
and queries are pushed down across data nodes for greater scale and
performance.

This release also adds support for user-defined actions allowing users to
define actions that are run by the TimescaleDB automation framework.

In addition to these major new features, the 2.0 branch introduces _breaking_ changes
to APIs and existing features, such as continuous aggregates. These changes are not
backwards compatible and might require changes to clients and/or scripts that rely on
the previous APIs. Please review our updated documentation and do proper testing to
ensure compatibility with your existing applications.

The noticeable breaking changes in APIs are:
- Redefined functions for policies
- A continuous aggregate is now created with `CREATE MATERIALIZED VIEW`
  instead of `CREATE VIEW` and automated refreshing requires adding a policy
  via `add_continuous_aggregate_policy`
- Redesign of informational views, including new (and more general) views for
  information about policies and user-defined actions

This release candidate is upgradable, so if you are on a previous release (e.g., 1.7.4)
you can upgrade to the release candidate and later expect to be able to upgrade to the
final 2.0 release. However, please carefully consider your compatibility requirements
_before_ upgrading.

**Major Features**
* #1923 Add support for distributed hypertables
* #2006 Add support for user-defined actions
* #2435 Move enterprise features to community
* #2437 Update Timescale License

**Minor Features**
* #2011 Constify TIMESTAMPTZ OP INTERVAL in constraints
* #2105 Support moving compressed chunks

**Bugfixes**
* #1843 Improve handling of "dropped" chunks
* #1886 Change ChunkAppend leader to use worker subplan
* #2116 Propagate privileges from hypertables to chunks
* #2263 Fix timestamp overflow in time_bucket optimization
* #2270 Fix handling of non-reference counted TupleDescs in gapfill
* #2325 Fix rename constraint/rename index
* #2370 Fix detection of hypertables in subqueries
* #2376 Fix caggs width expression handling on int based hypertables
* #2416 Check insert privileges to create chunk
* #2428 Allow owner change of continuous aggregate
* #2436 Propagate grants in continuous aggregates
svenklemm added a commit that referenced this pull request Oct 5, 2020
This release adds major new features and bugfixes since the 1.7.4 release.
We deem it moderate priority for upgrading.

This release adds the long-awaited support for distributed hypertables to
TimescaleDB. With 2.0, users can create distributed hypertables across
multiple instances of TimescaleDB, configured so that one instance serves
as an access node and multiple others as data nodes. All queries for a
distributed hypertable are issued to the access node, but inserted data
and queries are pushed down across data nodes for greater scale and
performance.

This release also adds support for user-defined actions allowing users to
define actions that are run by the TimescaleDB automation framework.

In addition to these major new features, the 2.0 branch introduces _breaking_ changes
to APIs and existing features, such as continuous aggregates. These changes are not
backwards compatible and might require changes to clients and/or scripts that rely on
the previous APIs. Please review our updated documentation and do proper testing to
ensure compatibility with your existing applications.

The noticeable breaking changes in APIs are:
- Redefined functions for policies
- A continuous aggregate is now created with `CREATE MATERIALIZED VIEW`
  instead of `CREATE VIEW` and automated refreshing requires adding a policy
  via `add_continuous_aggregate_policy`
- Redesign of informational views, including new (and more general) views for
  information about policies and user-defined actions

This release candidate is upgradable, so if you are on a previous release (e.g., 1.7.4)
you can upgrade to the release candidate and later expect to be able to upgrade to the
final 2.0 release. However, please carefully consider your compatibility requirements
_before_ upgrading.

**Major Features**
* #1923 Add support for distributed hypertables
* #2006 Add support for user-defined actions
* #2435 Move enterprise features to community
* #2437 Update Timescale License

**Minor Features**
* #2011 Constify TIMESTAMPTZ OP INTERVAL in constraints
* #2105 Support moving compressed chunks

**Bugfixes**
* #1843 Improve handling of "dropped" chunks
* #1886 Change ChunkAppend leader to use worker subplan
* #2116 Propagate privileges from hypertables to chunks
* #2263 Fix timestamp overflow in time_bucket optimization
* #2270 Fix handling of non-reference counted TupleDescs in gapfill
* #2325 Fix rename constraint/rename index
* #2370 Fix detection of hypertables in subqueries
* #2376 Fix caggs width expression handling on int based hypertables
* #2416 Check insert privileges to create chunk
* #2428 Allow owner change of continuous aggregate
* #2436 Propagate grants in continuous aggregates
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 17, 2020
This is a major release concluding several release candidates and it delivers
several major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

Since the last release candidate 4, it includes several minor improvements:
* Properly block more unsupported functionalities on multinode
* Improve and fix bugs in communication to data nodes
* Optimize locking for create chunk API
* Fix compression status in chunks view for distributed chunks
@k-rus k-rus mentioned this pull request Dec 17, 2020
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 17, 2020
…ncluding

several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed hypertables
(multi-node TimescaleDB), as well as new features and enhancements to core
functionality to give users better clarity and more control and flexibility over
their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users can now
create distributed hypertables across multiple instances of TimescaleDB,
configured so that one instance serves as an access node and multiple others
as data nodes. All queries for a distributed hypertable are issued to the access
node, but inserted data and queries are pushed down across data nodes for
greater scale and performance.

This release also adds:

* Support for user-defined actions, allowing users to define, customize, and
  schedule automated tasks, which can be run by the built-in jobs scheduling
  framework now exposed to users.
* Significant changes to continuous aggregates, which now separate view
  creation from the policy.  Users can now refresh individual regions of the
  continuous aggregate materialized view, or schedule automated refreshing via
  policy.
* Redesigned informational views, including new (and more general) views for
  information about policies and user-defined actions, as well as support for
  multi-node TimescaleDB.
* Moving all formerly enterprise features into our Community Edition, and
  updating Timescale License, which now provides additional (more permissive)
  rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated informational
views) do introduce breaking changes to APIs and are not backwards compatible.
While the update scripts in TimescaleDB 2.0 should upgrade databases running
TimescaleDB 1.x automatically, some of these API and feature changes may require
changes to clients and/or upstream scripts that rely on the previous APIs.
Before upgrading, we recommend reviewing upgrade documentation at
docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* Improve Continuous Aggregate API
* Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**
* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with subqueries
* @semtexzv for reporting an issue with continuous aggregates on int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype handling
* @lambdaq for suggesting to improve error message in continuous aggregate creation* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on continuous aggregates
* @cevian for reporting an issue with disabling compression on distributed hypertables
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 17, 2020
…ncluding

several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed hypertables
(multi-node TimescaleDB), as well as new features and enhancements to core
functionality to give users better clarity and more control and flexibility over
their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users can now
create distributed hypertables across multiple instances of TimescaleDB,
configured so that one instance serves as an access node and multiple others
as data nodes. All queries for a distributed hypertable are issued to the access
node, but inserted data and queries are pushed down across data nodes for
greater scale and performance.

This release also adds:

* Support for user-defined actions, allowing users to define, customize, and
  schedule automated tasks, which can be run by the built-in jobs scheduling
  framework now exposed to users.
* Significant changes to continuous aggregates, which now separate view
  creation from the policy.  Users can now refresh individual regions of the
  continuous aggregate materialized view, or schedule automated refreshing via
  policy.
* Redesigned informational views, including new (and more general) views for
  information about policies and user-defined actions, as well as support for
  multi-node TimescaleDB.
* Moving all formerly enterprise features into our Community Edition, and
  updating Timescale License, which now provides additional (more permissive)
  rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated informational
views) do introduce breaking changes to APIs and are not backwards compatible.
While the update scripts in TimescaleDB 2.0 should upgrade databases running
TimescaleDB 1.x automatically, some of these API and feature changes may require
changes to clients and/or upstream scripts that rely on the previous APIs.
Before upgrading, we recommend reviewing upgrade documentation at
docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* Improve Continuous Aggregate API
* Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**
* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with subqueries
* @semtexzv for reporting an issue with continuous aggregates on int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype handling
* @lambdaq for suggesting to improve error message in continuous aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on continuous aggregates
* @cevian for reporting an issue with disabling compression on distributed hypertables
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 18, 2020
…ncluding

several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed hypertables
(multi-node TimescaleDB), as well as new features and enhancements to core
functionality to give users better clarity and more control and flexibility over
their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users can now
create distributed hypertables across multiple instances of TimescaleDB,
configured so that one instance serves as an access node and multiple others
as data nodes. All queries for a distributed hypertable are issued to the access
node, but inserted data and queries are pushed down across data nodes for
greater scale and performance.

This release also adds:

* Support for user-defined actions, allowing users to define, customize, and
  schedule automated tasks, which can be run by the built-in jobs scheduling
  framework now exposed to users.
* Significant changes to continuous aggregates, which now separate view
  creation from the policy.  Users can now refresh individual regions of the
  continuous aggregate materialized view, or schedule automated refreshing via
  policy.
* Redesigned informational views, including new (and more general) views for
  information about policies and user-defined actions, as well as support for
  multi-node TimescaleDB.
* Moving all formerly enterprise features into our Community Edition, and
  updating Timescale License, which now provides additional (more permissive)
  rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated informational
views) do introduce breaking changes to APIs and are not backwards compatible.
While the update scripts in TimescaleDB 2.0 should upgrade databases running
TimescaleDB 1.x automatically, some of these API and feature changes may require
changes to clients and/or upstream scripts that rely on the previous APIs.
Before upgrading, we recommend reviewing upgrade documentation at
docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* Improve Continuous Aggregate API
* Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**
* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with subqueries
* @semtexzv for reporting an issue with continuous aggregates on int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype handling
* @lambdaq for suggesting to improve error message in continuous aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on continuous aggregates
* @cevian for reporting an issue with disabling compression on distributed hypertables
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 18, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* Improve Continuous Aggregate API
* Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**

* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor
improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 18, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* Improve Continuous Aggregate API
* Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**

* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor
improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 18, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2125 timescale#2221 Improve Continuous Aggregate API
* timescale#2084 timescale#2089 timescale#2098 timescale#2417 Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**

* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor
improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit that referenced this pull request Dec 18, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* #1923 Add support for distributed hypertables
* #2006 Add support for user-defined actions
* #2125 #2221 Improve Continuous Aggregate API
* #2084 #2089 #2098 #2417 Redesign informational views
* #2435 Move enterprise features to community
* #2437 Update Timescale License

**Previous Release Candidates**

* #2702 Release Candidate 4 (December 2, 2020)
* #2637 Release Candidate 3 (November 12, 2020)
* #2554 Release Candidate 2 (October 20, 2020)
* #2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor
improvements:
* #2746 Optimize locking for create chunk API
* #2705 Block tableoid access on distributed hypertable
* #2730 Do not allow unique index on compressed hypertables

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* #2719 Support disabling compression on distributed hypertables
* #2742 Fix compression status in chunks view for distributed chunks
* #2751 Fix crash and cancel when adding data node

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 18, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2125 timescale#2221 Improve Continuous Aggregate API
* timescale#2084 timescale#2089 timescale#2098 timescale#2417 Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**

* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor
improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
@k-rus k-rus mentioned this pull request Dec 18, 2020
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 21, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2125 timescale#2221 Improve Continuous Aggregate API
* timescale#2084 timescale#2089 timescale#2098 timescale#2417 Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**

* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor
improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables
* timescale#2764 Bootstrap data nodes with versioned extension

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node
* timescale#2763 Fix check constraint on hypertable metadata table

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 21, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2125 timescale#2221 Improve Continuous Aggregate API
* timescale#2084 timescale#2089 timescale#2098 timescale#2417 Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**

* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor
improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables
* timescale#2764 Bootstrap data nodes with versioned extension

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node
* timescale#2763 Fix check constraint on hypertable metadata table

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 21, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2125 timescale#2221 Improve Continuous Aggregate API
* timescale#2084 timescale#2089 timescale#2098 timescale#2417 Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**

* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, it includes several minor
improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables
* timescale#2764 Bootstrap data nodes with versioned extension

**Bugfixes**

Since the last release candidate 4, it includes several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node
* timescale#2763 Fix check constraint on hypertable metadata table

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
@k-rus k-rus mentioned this pull request Dec 21, 2020
k-rus added a commit to k-rus/timescaledb that referenced this pull request Dec 21, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* timescale#1923 Add support for distributed hypertables
* timescale#2006 Add support for user-defined actions
* timescale#2125 timescale#2221 Improve Continuous Aggregate API
* timescale#2084 timescale#2089 timescale#2098 timescale#2417 Redesign informational views
* timescale#2435 Move enterprise features to community
* timescale#2437 Update Timescale License

**Previous Release Candidates**

* timescale#2702 Release Candidate 4 (December 2, 2020)
* timescale#2637 Release Candidate 3 (November 12, 2020)
* timescale#2554 Release Candidate 2 (October 20, 2020)
* timescale#2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, there are several minor
improvements:
* timescale#2746 Optimize locking for create chunk API
* timescale#2705 Block tableoid access on distributed hypertable
* timescale#2730 Do not allow unique index on compressed hypertables
* timescale#2764 Bootstrap data nodes with versioned extension

**Bugfixes**

Since the last release candidate 4, there are several bugfixes:
* timescale#2719 Support disabling compression on distributed hypertables
* timescale#2742 Fix compression status in chunks view for distributed chunks
* timescale#2751 Fix crash and cancel when adding data node
* timescale#2763 Fix check constraint on hypertable metadata table

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit that referenced this pull request Dec 21, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* #1923 Add support for distributed hypertables
* #2006 Add support for user-defined actions
* #2125 #2221 Improve Continuous Aggregate API
* #2084 #2089 #2098 #2417 Redesign informational views
* #2435 Move enterprise features to community
* #2437 Update Timescale License

**Previous Release Candidates**

* #2702 Release Candidate 4 (December 2, 2020)
* #2637 Release Candidate 3 (November 12, 2020)
* #2554 Release Candidate 2 (October 20, 2020)
* #2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, there are several minor
improvements:
* #2746 Optimize locking for create chunk API
* #2705 Block tableoid access on distributed hypertable
* #2730 Do not allow unique index on compressed hypertables
* #2764 Bootstrap data nodes with versioned extension

**Bugfixes**

Since the last release candidate 4, there are several bugfixes:
* #2719 Support disabling compression on distributed hypertables
* #2742 Fix compression status in chunks view for distributed chunks
* #2751 Fix crash and cancel when adding data node
* #2763 Fix check constraint on hypertable metadata table

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit that referenced this pull request Dec 21, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* #1923 Add support for distributed hypertables
* #2006 Add support for user-defined actions
* #2125 #2221 Improve Continuous Aggregate API
* #2084 #2089 #2098 #2417 Redesign informational views
* #2435 Move enterprise features to community
* #2437 Update Timescale License

**Previous Release Candidates**

* #2702 Release Candidate 4 (December 2, 2020)
* #2637 Release Candidate 3 (November 12, 2020)
* #2554 Release Candidate 2 (October 20, 2020)
* #2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, there are several minor
improvements:
* #2746 Optimize locking for create chunk API
* #2705 Block tableoid access on distributed hypertable
* #2730 Do not allow unique index on compressed hypertables
* #2764 Bootstrap data nodes with versioned extension

**Bugfixes**

Since the last release candidate 4, there are several bugfixes:
* #2719 Support disabling compression on distributed hypertables
* #2742 Fix compression status in chunks view for distributed chunks
* #2751 Fix crash and cancel when adding data node
* #2763 Fix check constraint on hypertable metadata table

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
k-rus added a commit that referenced this pull request Dec 21, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* #1923 Add support for distributed hypertables
* #2006 Add support for user-defined actions
* #2125 #2221 Improve Continuous Aggregate API
* #2084 #2089 #2098 #2417 Redesign informational views
* #2435 Move enterprise features to community
* #2437 Update Timescale License

**Previous Release Candidates**

* #2702 Release Candidate 4 (December 2, 2020)
* #2637 Release Candidate 3 (November 12, 2020)
* #2554 Release Candidate 2 (October 20, 2020)
* #2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, there are several minor
improvements:
* #2746 Optimize locking for create chunk API
* #2705 Block tableoid access on distributed hypertable
* #2730 Do not allow unique index on compressed hypertables
* #2764 Bootstrap data nodes with versioned extension

**Bugfixes**

Since the last release candidate 4, there are several bugfixes:
* #2719 Support disabling compression on distributed hypertables
* #2742 Fix compression status in chunks view for distributed chunks
* #2751 Fix crash and cancel when adding data node
* #2763 Fix check constraint on hypertable metadata table

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
@k-rus k-rus mentioned this pull request Dec 21, 2020
k-rus added a commit that referenced this pull request Dec 21, 2020
With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture:  In particular, with TimescaleDB 2.0, users
can now create distributed hypertables across multiple instances of
TimescaleDB, configured so that one instance serves as an access node
and multiple others as data nodes. All queries for a distributed
hypertable are issued to the access node, but inserted data and queries
are pushed down across data nodes for greater scale and performance.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

* Support for user-defined actions, allowing users to define,
  customize, and schedule automated tasks, which can be run by the
  built-in jobs scheduling framework now exposed to users.
* Significant changes to continuous aggregates, which now separate the
  view creation from the policy.  Users can now refresh individual
  regions of the continuous aggregate materialized view, or schedule
  automated refreshing via  policy.
* Redesigned informational views, including new (and more general)
  views for information about hypertable's dimensions and chunks,
  policies and user-defined actions, as well as support for multi-node
  TimescaleDB.
* Moving all formerly enterprise features into our Community Edition,
  and updating Timescale License, which now provides additional (more
  permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs.  Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

**Major Features**

TimescaleDB 2.0 moves the following major features to GA:
* #1923 Add support for distributed hypertables
* #2006 Add support for user-defined actions
* #2125 #2221 Improve Continuous Aggregate API
* #2084 #2089 #2098 #2417 Redesign informational views
* #2435 Move enterprise features to community
* #2437 Update Timescale License

**Previous Release Candidates**

* #2702 Release Candidate 4 (December 2, 2020)
* #2637 Release Candidate 3 (November 12, 2020)
* #2554 Release Candidate 2 (October 20, 2020)
* #2478 Release Candidate 1 (October 1, 2020)

**Minor Features**

Since the last release candidate 4, there are several minor
improvements:
* #2746 Optimize locking for create chunk API
* #2705 Block tableoid access on distributed hypertable
* #2730 Do not allow unique index on compressed hypertables
* #2764 Bootstrap data nodes with versioned extension

**Bugfixes**

Since the last release candidate 4, there are several bugfixes:
* #2719 Support disabling compression on distributed hypertables
* #2742 Fix compression status in chunks view for distributed chunks
* #2751 Fix crash and cancel when adding data node
* #2763 Fix check constraint on hypertable metadata table

**Thanks**

Thanks to all contributors for the TimescaleDB 2.0 release:
* @airton-neto for reporting a bug in executing some queries with UNION
* @nshah14285 for reporting an issue with propagating privileges
* @kalman5 for reporting an issue with renaming constraints
* @LbaNeXte for reporting a bug in decompression for queries with
  subqueries
* @semtexzv for reporting an issue with continuous aggregates on
  int-based hypertables
* @mr-ns for reporting an issue with privileges for creating chunks
* @cloud-rocket for reporting an issue with setting an owner on
  continuous aggregate
* @jocrau for reporting a bug during creating an index with transaction
  per chunk
* @fvannee for reporting an issue with custom time types
* @ArtificialPB for reporting a bug in executing queries with
  conditional ordering on compressed hypertable
* @dutchgecko for reporting an issue with continuous aggregate datatype
  handling
* @lambdaq for suggesting to improve error message in continuous
  aggregate creation
* @francesco11112 for reporting memory issue on COPY
* @Netskeh for reporting bug on time_bucket problem in continuous
  aggregates
* @mr-ns for reporting the issue with CTEs on distributed hypertables
* @akamensky for reporting an issue with recursive cache invalidation
* @ryanbooz for reporting slow queries with real-time aggregation on
  continuous aggregates
* @cevian for reporting an issue with disabling compression on
  distributed hypertables
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants