2.15.0 (2024-05-08)
This release contains the performance improvements and bug fixes introduced since
TimescaleDB v2.14.2. Best practice is to upgrade at the next available opportunity.
Highlighted features in this release
- Continuous Aggregate now supports
time_bucket
withorigin
and/oroffset
. - The following improvements have been introduced for hypertable compression:
- Recommend optimized defaults for segment by and order by when configuring compression through analysis of table configuration and statistics.
- Added planner support to check more kinds of WHERE conditions before decompression.
This reduces the number of rows that have to be decompressed. - You can now use
minmax
sparse indexes when you compress columns withbtree
indexes. - Vectorize filters in the WHERE clause that contain text equality operators and LIKE expressions.
Deprecation warning
- You can no longer create continuous aggregates using
time_bucket_ng
. This feature will be completely removed in the next release. Best practice is to migrate your current continuous aggregates to the new form, - This is the last release supporting PostgreSQL 13.
For self-hosted TimescaleDB v2.15.0 deployments only
After you run ALTER EXTENSION
, you must run this SQL script. For more details, see the following pull requests #6797.
Complete list of features
- #6382 Support for
time_bucket
with origin and offset in CAggs. - #6696 Improve the defaults for compression
segment_by
andorder_by
. - #6705 Add sparse minmax indexes for compressed columns that have uncompressed btree indexes.
- #6754 Allow
DROP CONSTRAINT
on compressed hypertables. - #6767 Add metadata table
_timestaledb_internal.bgw_job_stat_history
for tracking job execution history. - #6798 Prevent usage of the deprecated
time_bucket_ng
in the CAgg definition. - #6810 Add telemetry for access methods.
- #6811 Remove the no longer relevant
timescaledb.allow_install_without_preload
GUC. - #6837 Add migration path for CAggs using
time_bucket_ng
. - #6865 Update the watermark when truncating a CAgg.
Complete list of bugfixes
- #6617 Fix error in show_chunks.
- #6621 Remove metadata when dropping chunks.
- #6677 Fix snapshot usage in CAgg invalidation scanner.
- #6698 Define meaning of 0 retries for jobs as no retries.
- #6717 Fix handling of compressed tables with primary or unique index in COPY path.
- #6726 Fix constify cagg_watermark using window function when querying a CAgg.
- #6729 Fix NULL start value handling in CAgg refresh.
- #6732 Fix CAgg migration with custom timezone / date format settings.
- #6752 Remove custom autovacuum setting from compressed chunks.
- #6770 Fix plantime chunk exclusion for OSM chunk.
- #6789 Fix deletes with subqueries and compression.
- #6796 Fix a crash involving a view on a hypertable.
- #6797 Fix foreign key constraint handling on compressed hypertables.
- #6816 Fix handling of chunks with no constraints.
- #6820 Fix a crash when the ts_hypertable_insert_blocker was called directly.
- #6849 Use non-orderby compressed metadata in compressed DML.
- #6867 Clean up compression settings when deleting compressed CAgg.
- #6869 Fix compressed DML with constraints of form value OP column.
- #6870 Fix bool expression pushdown for queries on compressed chunks.
Acknowledgments
- @brasic for reporting a crash when
ts_hypertable_insert_blocker
was called directly. - @bvanelli for reporting an issue with the jobs retry count.
- @djzurawski for reporting an error about dropping chunks.
- @Dzuzepppe for reporting the issue that DELETEs using a subquery on compressed chunks was working incorrectly.
- @hongquan for reporting a 'timestamp out of range' error during CAgg migrations.
- @kevcenteno for reporting that the
show_chunks
API returned an incorrect output when 'created_before/created_after' was used with time-partitioned columns. - @mahipv for starting working on the job history PR.
- @rovo89 for reporting that constify
cagg_watermark
was not working using the window function when querying a CAgg.