Release 2.5.0

This release adds major new features since the 2.4.2 release.
We deem it moderate priority for upgrading.

This release includes these noteworthy features:

* Continuous Aggregates for Distributed Hypertables
* Support for PostgreSQL 14
* Experimental: Support for timezones in `time_bucket_ng()`, including
the `origin` argument

This release also includes several bug fixes.

**Features**
* #3034 Add support for PostgreSQL 14
* #3435 Add continuous aggregates for distributed hypertables
* #3505 Add support for timezones in `time_bucket_ng()`

**Bugfixes**
* #3580 Fix memory context bug executing TRUNCATE
* #3592 Allow alter column type on distributed hypertable
* #3598 Improve evaluation of stable functions such as now() on access
node
* #3618 Fix execution of refresh_caggs from user actions
* #3625 Add shared dependencies when creating chunk
* #3626 Fix memory context bug executing TRUNCATE
* #3627 Schema qualify UDTs in multi-node
* #3638 Allow owner change of a data node
* #3654 Fix index attnum mapping in reorder_chunk
* #3661 Fix SkipScan path generation with constant DISTINCT column
* #3667 Fix compress_policy for multi txn handling
* #3673 Fix distributed hypertable DROP within a procedure
* #3701 Allow anyone to use size utilities on distributed hypertables
* #3708 Fix crash in get_aggsplit
* #3709 Fix ordered append pathkey check
* #3712 Fix GRANT/REVOKE ALL IN SCHEMA handling
* #3717 Support transparent decompression on individual chunks
* #3724 Fix inserts into compressed chunks on hypertables with caggs
* #3727 Fix DirectFunctionCall crash in distributed_exec
* #3728 Fix SkipScan with varchar column
* #3733 Fix ANALYZE crash with custom statistics for custom types
* #3747 Always reset expr context in DecompressChunk

**Thanks**
* @binakot and @sebvett for reporting an issue with DISTINCT queries
* @hardikm10, @DavidPavlicek and @pafiti for reporting bugs on TRUNCATE
* @mjf for reporting an issue with ordered append and JOINs
* @phemmer for reporting the issues on multinode with aggregate queries and evaluation of now()
* @abolognino for reporting an issue with INSERTs into compressed hypertables that have cagg
* @tanglebones for reporting the ANALYZE crash with custom types on multinode
This commit is contained in:
Fabrízio de Royes Mello 2021-10-26 17:23:45 -03:00
parent e02f48c19d
commit 8925dd8e15
7 changed files with 56 additions and 28 deletions

View File

@ -4,25 +4,55 @@
`psql` with the `-X` flag to prevent any `.psqlrc` commands from
accidentally triggering the load of a previous DB version.**
## Unreleased
## 2.5.0 (2021-10-28)
This release adds major new features since the 2.4.2 release.
We deem it moderate priority for upgrading.
This release includes these noteworthy features:
* Continuous Aggregates for Distributed Hypertables
* Support for PostgreSQL 14
* Experimental: Support for timezones in `time_bucket_ng()`, including
the `origin` argument
This release also includes several bug fixes.
**Features**
* #3598 Improve evaluation of stable functions such as now() on access node
* #3034 Add support for PostgreSQL 14
* #3435 Add continuous aggregates for distributed hypertables
* #3505 Add support for timezones in `time_bucket_ng()`
**Bugfixes**
* #3580 Fix memory context bug executing TRUNCATE
* #3592 Allow alter column type on distributed hypertable
* #3598 Improve evaluation of stable functions such as now() on access node
* #3618 Fix execution of refresh_caggs from user actions
* #3625 Add shared dependencies when creating chunk
* #3626 Fix memory context bug executing TRUNCATE
* #3627 Schema qualify UDTs in multi-node
* #3638 Allow owner change of a data node
* #3654 Fix index attnum mapping in reorder_chunk
* #3661 Fix SkipScan path generation with constant DISTINCT column
* #3667 Fix compress_policy for multi txn handling
* #3673 Fix distributed hypertable DROP within a procedure
* #3701 Allow anyone to use size utilities on distributed hypertables
* #3708 Fix crash in get_aggsplit
* #3709 Fix ordered append pathkey check
* #3712 Fix GRANT/REVOKE ALL IN SCHEMA handling
* #3717 Support transparent decompression on individual chunks
* #3724 Fix inserts into compressed chunks on hypertables with caggs
* #3727 Fix DirectFunctionCall crash in distributed_exec
* #3728 Fix SkipScan with varchar column
* #3733 Fix ANALYZE crash with custom statistics for custom types
* #3747 Always reset expr context in DecompressChunk
**Thanks**
* @binakot and @sebvett for reporting an issue with DISTINCT queries
* @hardikm10, @DavidPavlicek and @pafiti for reporting bugs on TRUNCATE
* @mjf for reporting an issue with ordered append and JOINs
* @phemmer for reporting the issues on multinode with aggregate queries and evaluation of now()
* @abolognino for reporting an issue with INSERTs into compressed hypertables that have cagg
* @tanglebones for reporting the ANALYZE crash with custom types on multinode
## 2.4.2 (2021-09-21)

View File

@ -29,11 +29,12 @@ set(MOD_FILES
updates/2.3.0--2.3.1.sql
updates/2.3.1--2.4.0.sql
updates/2.4.0--2.4.1.sql
updates/2.4.1--2.4.2.sql)
updates/2.4.1--2.4.2.sql
updates/2.4.2--2.5.0.sql)
# The downgrade file to generate a downgrade script for the current version, as
# specified in version.config
set(CURRENT_REV_FILE reverse-dev.sql)
set(CURRENT_REV_FILE 2.5.0--2.4.2.sql)
# Files for generating old downgrade scripts. This should only include files for
# downgrade to from one version to its previous version since we do not support
# skipping versions when downgrading.

View File

@ -0,0 +1,2 @@
DROP FUNCTION IF EXISTS _timescaledb_internal.time_col_name_for_chunk(name,name);
DROP FUNCTION IF EXISTS _timescaledb_internal.time_col_type_for_chunk(name,name);

View File

@ -0,0 +1,18 @@
DROP FUNCTION IF EXISTS timescaledb_experimental.time_bucket_ng(bucket_width INTERVAL, ts TIMESTAMPTZ, timezone TEXT);
DROP FUNCTION IF EXISTS timescaledb_experimental.time_bucket_ng(bucket_width INTERVAL, ts TIMESTAMPTZ, origin TIMESTAMPTZ, timezone TEXT);
DROP FUNCTION IF EXISTS _timescaledb_internal.subtract_integer_from_now;
--changes for compression policy ---
DROP PROCEDURE IF EXISTS _timescaledb_internal.policy_compression;
DROP PROCEDURE IF EXISTS _timescaledb_internal.policy_compression_interval;
DROP PROCEDURE IF EXISTS _timescaledb_internal.policy_compression_integer;
--changes for continuous Aggregates over distributed hypertables ---
DROP FUNCTION IF EXISTS _timescaledb_internal.drop_dist_ht_invalidation_trigger;
DROP FUNCTION IF EXISTS _timescaledb_internal.hypertable_invalidation_log_delete;
DROP FUNCTION IF EXISTS _timescaledb_internal.invalidation_cagg_log_add_entry;
DROP FUNCTION IF EXISTS _timescaledb_internal.invalidation_hyper_log_add_entry;
DROP FUNCTION IF EXISTS _timescaledb_internal.invalidation_process_cagg_log;
DROP FUNCTION IF EXISTS _timescaledb_internal.invalidation_process_hypertable_log;
DROP FUNCTION IF EXISTS _timescaledb_internal.materialization_invalidation_log_delete;

View File

@ -1,5 +0,0 @@
DROP FUNCTION IF EXISTS _timescaledb_internal.time_col_name_for_chunk(name,name);
DROP FUNCTION IF EXISTS _timescaledb_internal.time_col_type_for_chunk(name,name);
CREATE OR REPLACE FUNCTION _timescaledb_internal.subtract_integer_from_now( hypertable_relid REGCLASS, lag INT8 )
RETURNS INT8 AS '@MODULE_PATHNAME@', 'ts_subtract_integer_from_now' LANGUAGE C STABLE STRICT;

View File

@ -1,18 +0,0 @@
DROP FUNCTION IF EXISTS timescaledb_experimental.time_bucket_ng(bucket_width INTERVAL, ts TIMESTAMPTZ, timezone TEXT);
DROP FUNCTION IF EXISTS timescaledb_experimental.time_bucket_ng(bucket_width INTERVAL, ts TIMESTAMPTZ, origin TIMESTAMPTZ, timezone TEXT);
DROP FUNCTION IF EXISTS _timescaledb_internal.subtract_integer_from_now;
--changes for compression policy ---
DROP PROCEDURE IF EXISTS _timescaledb_internal.policy_compression;
DROP PROCEDURE IF EXISTS _timescaledb_internal.policy_compression_interval;
DROP PROCEDURE IF EXISTS _timescaledb_internal.policy_compression_integer;
--changes for continuous Aggregates over distributed hypertables ---
DROP FUNCTION IF EXISTS _timescaledb_internal.drop_dist_ht_invalidation_trigger;
DROP FUNCTION IF EXISTS _timescaledb_internal.hypertable_invalidation_log_delete;
DROP FUNCTION IF EXISTS _timescaledb_internal.invalidation_cagg_log_add_entry;
DROP FUNCTION IF EXISTS _timescaledb_internal.invalidation_hyper_log_add_entry;
DROP FUNCTION IF EXISTS _timescaledb_internal.invalidation_process_cagg_log;
DROP FUNCTION IF EXISTS _timescaledb_internal.invalidation_process_hypertable_log;
DROP FUNCTION IF EXISTS _timescaledb_internal.materialization_invalidation_log_delete;

View File

@ -1,3 +1,3 @@
version = 2.5.0-dev
update_from_version = 2.4.2
update_from_version = 2.5.0
downgrade_to_version = 2.4.2