Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Add some more randomness to chunk assignment #3279

Merged
merged 1 commit into from Jun 8, 2021

Conversation

cevian
Copy link
Contributor

@cevian cevian commented May 25, 2021

Previously the assignment of data nodes to chunks had a bit
of a thundering-herd problem for multiple hypertables
without space partions: the data node assigned for the
first chunk was always the same across hypertables.
We fix this by adding the hypertable_id to the
index into the datanode array. This de-synchronizes
across hypertables but maintains consistency for any
given hypertable.

We could make this consistent for space partitioned tables
as well but avoid doing so now to prevent partitions
jumping nodes due to this change.

This also effects tablespace selection in the same way.

@cevian cevian requested a review from erimatnor May 25, 2021 16:28
@cevian cevian requested a review from a team as a code owner May 25, 2021 16:28
@cevian cevian requested review from afiskon and mfundul and removed request for a team May 25, 2021 16:28
@cevian cevian force-pushed the mn_randomize_chunk_assignment branch from a6b6483 to 36b3248 Compare May 25, 2021 17:45
@codecov
Copy link

codecov bot commented May 25, 2021

Codecov Report

Merging #3279 (f209d00) into master (a1cf610) will increase coverage by 0.01%.
The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #3279      +/-   ##
==========================================
+ Coverage   90.50%   90.51%   +0.01%     
==========================================
  Files         212      212              
  Lines       35493    35495       +2     
==========================================
+ Hits        32123    32129       +6     
+ Misses       3370     3366       -4     
Impacted Files Coverage Δ
src/hypertable.c 87.99% <100.00%> (+0.02%) ⬆️
src/loader/bgw_message_queue.c 88.15% <0.00%> (+2.63%) ⬆️

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 a1cf610...f209d00. Read the comment docs.

@cevian cevian force-pushed the mn_randomize_chunk_assignment branch from 36b3248 to 9da54b5 Compare May 25, 2021 18:20
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.

Just one suggestion for clarifying comment.

src/hypertable.c Outdated Show resolved Hide resolved
Copy link
Contributor

@mkindahl mkindahl left a comment

Choose a reason for hiding this comment

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

LGTM

Previously the assignment of data nodes to chunks had a bit
of a thundering-herd problem for multiple hypertables
without space partions: the data node assigned for the
first chunk was always the same across hypertables.
We fix this by adding the hypertable_id to the
index into the datanode array. This de-synchronizes
across hypertables but maintains consistency for any
given hypertable.

We could make this consistent for space partitioned tables
as well but avoid doing so now to prevent partitions
jumping nodes due to this change.

This also effects tablespace selection in the same way.
@erimatnor erimatnor force-pushed the mn_randomize_chunk_assignment branch from fe6dab4 to f209d00 Compare June 8, 2021 07:21
@erimatnor erimatnor merged commit b72dab1 into timescale:master Jun 8, 2021
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 1, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
@mkindahl mkindahl mentioned this pull request Jul 1, 2021
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 1, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 1, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 1, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 1, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 1, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 1, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 1, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit that referenced this pull request Jul 2, 2021
**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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 2, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 2, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 2, 2021
**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 2, 2021
This maintenance release contains bugfixes since the 2.3.0 release. We
deem it moderate priority for upgrading.

**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 5, 2021
This maintenance release contains bugfixes since the 2.3.0 release. We
deem it moderate priority for upgrading.

**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 5, 2021
This maintenance release contains bugfixes since the 2.3.0 release. We
deem it moderate priority for upgrading. The release introduces the
possibility of generating downgrade scripts, improves the trigger
handling for distributed hypertables, adds some more randomness to
chunk assignment to avoid thundering herd issues in chunk assignment,
and fixes some issues in update handling as well as some other bugs.

**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit to mkindahl/timescaledb that referenced this pull request Jul 5, 2021
This maintenance release contains bugfixes since the 2.3.0 release. We
deem it moderate priority for upgrading. The release introduces the
possibility of generating downgrade scripts, improves the trigger
handling for distributed hypertables, adds some more randomness to
chunk assignment to avoid thundering herd issues in chunk assignment,
and fixes some issues in update handling as well as some other bugs.

**Bugfixes**
* timescale#3279 Add some more randomness to chunk assignment
* timescale#3288 Fix failed update with parallel workers
* timescale#3300 Improve trigger handling on distributed hypertables
* timescale#3304 Remove paths that reference parent relids for compressed chunks
* timescale#3305 Fix pull_varnos miscomputation of relids set
* timescale#3310 Generate downgrade script
* timescale#3314 Fix heap buffer overflow in hypertable expansion
* timescale#3317 Fix heap buffer overflow in remote connection cache.
* timescale#3327 Make aggregate in caggs fully qualified
* timescale#3327 Make aggregates in caggs fully qualified
* timescale#3336 Fix pg_init_privs objsubid handling
* timescale#3345 Fix SkipScan distinct column identification
* timescale#3355 Fix heap buffer overflow when renaming compressed hypertable columns.
* timescale#3367 Improve DecompressChunk qual pushdown
* timescale#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
mkindahl added a commit that referenced this pull request Jul 6, 2021
This maintenance release contains bugfixes since the 2.3.0 release. We
deem it moderate priority for upgrading. The release introduces the
possibility of generating downgrade scripts, improves the trigger
handling for distributed hypertables, adds some more randomness to
chunk assignment to avoid thundering herd issues in chunk assignment,
and fixes some issues in update handling as well as some other bugs.

**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
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.

None yet

4 participants