-
Notifications
You must be signed in to change notification settings - Fork 848
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
**Bugfixes** * #3279 Add some more randomness to chunk assignment * #3288 Fix failed update with parallel workers * #3300 Improve trigger handling on distributed hypertables * #3304 Remove paths that reference parent relids for compressed chunks * #3305 Fix pull_varnos miscomputation of relids set * #3310 Generate downgrade script * #3314 Fix heap buffer overflow in hypertable expansion * #3317 Fix heap buffer overflow in remote connection cache. * #3327 Make aggregate in caggs fully qualified * #3327 Make aggregates in caggs fully qualified * #3336 Fix pg_init_privs objsubid handling * #3345 Fix SkipScan distinct column identification * #3355 Fix heap buffer overflow when renaming compressed hypertable columns. * #3367 Improve DecompressChunk qual pushdown * #3377 Fix bad use of repalloc **Thanks** * @db-adrian for reporting an issue when accessing cagg view through postgres_fdw * @fncaldas and @pgwhalen for reporting an issue accessing caggs when public is not in search_path * @fvannee, @mglonnro and @ebreijo for reporting an issue with the upgrade script * @fvannee for reporting a performance regression with SkipScan
- Loading branch information
Showing
7 changed files
with
53 additions
and
42 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
CREATE SCHEMA IF NOT EXISTS timescaledb_experimental; | ||
GRANT USAGE ON SCHEMA timescaledb_experimental TO PUBLIC; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.block_new_chunks; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.allow_new_chunks; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.refresh_continuous_aggregate; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
DROP SCHEMA IF EXISTS timescaledb_experimental CASCADE; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.block_new_chunks; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.allow_new_chunks; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.refresh_continuous_aggregate; | ||
|
||
-- We need to rewrite all continuous aggregates to make sure that the | ||
-- queries do not contain qualification. They will be re-written in | ||
-- the post-update script as well, but the previous version does not | ||
-- process all continuous aggregates, leaving some with qualification | ||
-- for the standard functions. To make this work, we need to | ||
-- temporarily set the update stage to the post-update stage, which | ||
-- will allow the ALTER MATERIALIZED VIEW to rewrite the query. If | ||
-- that is not done, the TimescaleDB-specific hooks will not be used | ||
-- and you will get an error message saying that, for example, | ||
-- `conditions_summary` is not a materialized view. | ||
SET timescaledb.update_script_stage TO 'post'; | ||
DO $$ | ||
DECLARE | ||
vname regclass; | ||
materialized_only bool; | ||
altercmd text; | ||
ts_version TEXT; | ||
BEGIN | ||
FOR vname, materialized_only IN select format('%I.%I', cagg.user_view_schema, cagg.user_view_name)::regclass, cagg.materialized_only from _timescaledb_catalog.continuous_agg cagg | ||
LOOP | ||
altercmd := format('ALTER MATERIALIZED VIEW %s SET (timescaledb.materialized_only=%L) ', vname::text, materialized_only); | ||
EXECUTE altercmd; | ||
END LOOP; | ||
EXCEPTION WHEN OTHERS THEN RAISE; | ||
END | ||
$$; | ||
RESET timescaledb.update_script_stage; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +0,0 @@ | ||
CREATE SCHEMA IF NOT EXISTS timescaledb_experimental; | ||
GRANT USAGE ON SCHEMA timescaledb_experimental TO PUBLIC; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.block_new_chunks; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.allow_new_chunks; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.refresh_continuous_aggregate; | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,33 +0,0 @@ | ||
DROP SCHEMA IF EXISTS timescaledb_experimental CASCADE; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.block_new_chunks; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.allow_new_chunks; | ||
DROP FUNCTION IF EXISTS _timescaledb_internal.refresh_continuous_aggregate; | ||
|
||
-- We need to rewrite all continuous aggregates to make sure that the | ||
-- queries do not contain qualification. They will be re-written in | ||
-- the post-update script as well, but the previous version does not | ||
-- process all continuous aggregates, leaving some with qualification | ||
-- for the standard functions. To make this work, we need to | ||
-- temporarily set the update stage to the post-update stage, which | ||
-- will allow the ALTER MATERIALIZED VIEW to rewrite the query. If | ||
-- that is not done, the TimescaleDB-specific hooks will not be used | ||
-- and you will get an error message saying that, for example, | ||
-- `conditions_summary` is not a materialized view. | ||
SET timescaledb.update_script_stage TO 'post'; | ||
DO $$ | ||
DECLARE | ||
vname regclass; | ||
materialized_only bool; | ||
altercmd text; | ||
ts_version TEXT; | ||
BEGIN | ||
FOR vname, materialized_only IN select format('%I.%I', cagg.user_view_schema, cagg.user_view_name)::regclass, cagg.materialized_only from _timescaledb_catalog.continuous_agg cagg | ||
LOOP | ||
altercmd := format('ALTER MATERIALIZED VIEW %s SET (timescaledb.materialized_only=%L) ', vname::text, materialized_only); | ||
EXECUTE altercmd; | ||
END LOOP; | ||
EXCEPTION WHEN OTHERS THEN RAISE; | ||
END | ||
$$; | ||
RESET timescaledb.update_script_stage; | ||
|
||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,2 @@ | ||
version = 2.4.0-dev | ||
update_from_version = 2.3.0 | ||
update_from_version = 2.3.1 |