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

Fix crash and cancel when adding data node #2751

Merged

Conversation

erimatnor
Copy link
Contributor

This change fixes two issues with add_data_node:

  1. In one case, a check for a valid connection pointer was not done,
    causing a segmentation fault when connection attempts failed.

  2. Connections were made with a blocking API that would hang
    indefinitely if the receiving end is not responding. The user
    couldn't cancel the connection attempt with CTRL-C, since no wait
    latch or interrupt checking was used. The code is now updated to
    use a non-blocking connection API, where it is possible to wait on
    the socket and latch, respecting interrupts.

This was tested locally by setting up a bogus listening socket with netcat -l that would not respond to connection attempts by add_data_node. Without the fix, the command could not be canceled with CTRL-C. With the update code, this works as expected. Naturally, this is a test case that is difficult to test for in the regression tests.

@erimatnor erimatnor force-pushed the fix-add-data-node-crash-and-abort branch 2 times, most recently from 0cad53c to c7cab1c Compare December 16, 2020 22:52
@erimatnor erimatnor changed the title Fix crash and cancel behavior for add_data_node Fix crash and canceling when adding data node Dec 16, 2020
@erimatnor erimatnor force-pushed the fix-add-data-node-crash-and-abort branch 3 times, most recently from 7a60007 to 9b38f08 Compare December 16, 2020 23:03
@erimatnor erimatnor changed the title Fix crash and canceling when adding data node Fix crash and cancel when adding data node Dec 16, 2020
This change fixes two issues with `add_data_node`:

1. In one case, a check for a valid connection pointer was not done,
   causing a segmentation fault when connection attempts failed.

2. Connections were made with a blocking API that hangs
   indefinitely when the receiving end is not responding. The user
   couldn't cancel the connection attempt with CTRL-C, since no wait
   latch or interrupt checking was used. The code is now updated to
   use a non-blocking connection API, where it is possible to wait on
   the socket and latch, respecting interrupts.
@erimatnor erimatnor force-pushed the fix-add-data-node-crash-and-abort branch from 9b38f08 to 8c0d47a Compare December 16, 2020 23:06
@codecov
Copy link

codecov bot commented Dec 16, 2020

Codecov Report

Merging #2751 (8c0d47a) into master (d13afc7) will increase coverage by 0.09%.
The diff coverage is 76.19%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2751      +/-   ##
==========================================
+ Coverage   90.12%   90.21%   +0.09%     
==========================================
  Files         212      212              
  Lines       34640    34631       -9     
==========================================
+ Hits        31218    31242      +24     
+ Misses       3422     3389      -33     
Impacted Files Coverage Δ
tsl/src/dist_util.c 93.28% <ø> (ø)
tsl/src/remote/connection.c 90.67% <74.35%> (-1.45%) ⬇️
tsl/src/data_node.c 96.25% <100.00%> (+0.02%) ⬆️
src/loader/bgw_message_queue.c 84.51% <0.00%> (-2.59%) ⬇️
tsl/src/data_node_dispatch.c 97.02% <0.00%> (-0.25%) ⬇️
src/import/planner.c 70.30% <0.00%> (+11.12%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d13afc7...8c0d47a. Read the comment docs.

@erimatnor erimatnor marked this pull request as ready for review December 17, 2020 00:40
@erimatnor erimatnor requested a review from a team as a code owner December 17, 2020 00:40
@erimatnor erimatnor requested review from pmwkaa, mkindahl, gayyappan and k-rus and removed request for a team and gayyappan December 17, 2020 00:40
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.

Looks good to me.

I think it might be possible to test it by setting statement timeout, it will likely go through CHECK_FOR_INTERRUPTS() as well

@erimatnor
Copy link
Contributor Author

erimatnor commented Dec 17, 2020

statement

Good point. I'll try it. Although I think the issue is having a remote endpoint that accepts a connection but is not responding.

@erimatnor
Copy link
Contributor Author

statement

Good point. I'll try it. Although I think the issue is having a remote endpoint that accepts a connection but is not responding.

Couldn't get this to work. I think one way to do it is to set up a listening socket in a separate thread (C code) and then connect to that. But that's a bit more work than I think we can afford right now, so I will look into that as a separate PR.

@erimatnor erimatnor merged commit 877f482 into timescale:master Dec 17, 2020
@erimatnor erimatnor deleted the fix-add-data-node-crash-and-abort branch December 17, 2020 08:39
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 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 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.

None yet

4 participants