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

Allow owner change of continuous aggregate #2428

Merged
merged 1 commit into from Sep 23, 2020

Conversation

mkindahl
Copy link
Contributor

@mkindahl mkindahl commented Sep 22, 2020

Implements support for changing the owner of the continuous aggregate.
This will change the owner of the materialized hypertable, the
user view, the partial view, and the direct view.

Fixes #2414
Fixes #1277

@mkindahl mkindahl marked this pull request as ready for review September 22, 2020 10:13
@mkindahl mkindahl requested a review from a team as a code owner September 22, 2020 10:13
@mkindahl mkindahl requested review from k-rus, WireBaron and gayyappan and removed request for a team September 22, 2020 10:13
@codecov
Copy link

codecov bot commented Sep 22, 2020

Codecov Report

Merging #2428 into master will increase coverage by 0.00%.
The diff coverage is 100.00%.

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #2428   +/-   ##
=======================================
  Coverage   90.11%   90.11%           
=======================================
  Files         213      213           
  Lines       34323    34336   +13     
=======================================
+ Hits        30930    30943   +13     
  Misses       3393     3393           
Impacted Files Coverage Δ
src/process_utility.c 93.65% <100.00%> (+0.05%) ⬆️
src/loader/bgw_message_queue.c 87.09% <0.00%> (ø)

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 6c59f57...2119cc1. Read the comment docs.

@mkindahl mkindahl self-assigned this Sep 22, 2020
@@ -2814,6 +2814,20 @@ process_altertable_start_matview(ProcessUtilityArgs *args)
process_altercontinuousagg_set_with(cagg, view_relid, (List *) cmd->def);
break;

case AT_ChangeOwner:
/* Change owner of view */
AlterTableInternal(view_relid, list_make1(cmd), false);
Copy link
Contributor

Choose a reason for hiding this comment

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

This seems to share a lot of code with the AT_SetTableSpace case. Would be good to harmonize.

I also think we need to change ownership of the other objects, the direct view, partial view, etc.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Fixed.

Copy link
Contributor

@erimatnor erimatnor left a comment

Choose a reason for hiding this comment

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

Approving.

A couple of thoughts, though. I am wondering what happens if you try to modify (change owner) of the internal objects directly, like the materialized hypertable or internal views.? I guess that could mess things up unless we already block such changes. Or, maybe we do not care about blocking it since people that mess with internal objects are on their own.

src/process_utility.c Outdated Show resolved Hide resolved
@mkindahl
Copy link
Contributor Author

mkindahl commented Sep 23, 2020

Approving.

A couple of thoughts, though. I am wondering what happens if you try to modify (change owner) of the internal objects directly, like the materialized hypertable or internal views.? I guess that could mess things up unless we already block such changes. Or, maybe we do not care about blocking it since people that mess with internal objects are on their own.

Well, yes, if you start to mess with the implementation objects you're outside the "comfort zone" and we cannot guarantee any form of support if that is done, but that is not the reason for not blocking them. The reason is that blocking valid operations, even on internal objects, prevent users from fixing issues that is a result bugs that we have introduced. I think in general that we should be wary of blocking any operations since access to objects can be required to resolve situations where the system is broken.

Implements support for changing the owner of the continuous aggregate.
This will change the owner of the materialized hypertable, the
user view, the partial view, and the direct view.

Fixes timescale#2414
Fixes timescale#1277
@mkindahl mkindahl merged commit 6aae14c into timescale:master Sep 23, 2020
@mkindahl mkindahl deleted the cagg_change_owner branch September 23, 2020 19:56
@mkindahl mkindahl mentioned this pull request Oct 2, 2020
svenklemm added a commit to svenklemm/timescaledb that referenced this pull request Oct 2, 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 2, 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. 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 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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Cannot change owner of continuous aggregate Cannot set owner on continuous aggregation view
3 participants