Skip to content

Releases: timescale/timescaledb

2.0.1 (2021-01-28)

28 Jan 20:10
Compare
Choose a tag to compare

This maintenance release contains bugfixes since the 2.0.0 release.
We deem it high priority for upgrading.

In particular the fixes contained in this maintenance release address
issues in continuous aggregates, compression, JOINs with hypertables
and when upgrading from previous versions.

Bugfixes

  • #2772 Always validate existing database and extension
  • #2780 Fix config enum entries for remote data fetcher
  • #2806 Add check for dropped chunk on update
  • #2828 Improve cagg watermark caching
  • #2838 Fix catalog repair in update script
  • #2842 Do not mark job as started when setting next_start field
  • #2845 Fix continuous aggregate privileges during upgrade
  • #2851 Fix nested loop joins that involve compressed chunks
  • #2860 Fix projection in ChunkAppend nodes
  • #2861 Remove compression stat update from update script
  • #2865 Apply volatile function quals at decompresschunk node
  • #2866 Avoid partitionwise planning of partialize_agg
  • #2868 Fix corruption in gapfill plan
  • #2874 Fix partitionwise agg crash due to uninitialized memory

Thanks

  • @alex88 for reporting an issue with joined hypertables
  • @brian-from-quantrocket for reporting an issue with extension update and dropped chunks
  • @dhodyn for reporting an issue when joining compressed chunks
  • @markatosi for reporting a segfault with partitionwise aggregates enabled
  • @PhilippJust for reporting an issue with add_job and initial_start
  • @sgorsh for reporting an issue when using pgAdmin on windows
  • @WarriorOfWire for reporting the bug with gapfill queries not being
    able to find pathkey item to sort

The music for this release was Buckethead's Electric Tears.

2.0.0 (2020-12-21)

21 Dec 19:07
Compare
Choose a tag to compare

With this release, we are officially moving TimescaleDB 2.0 to GA,
concluding several release candidates.

TimescaleDB 2.0 adds the much-anticipated support for distributed
hypertables (multi-node TimescaleDB), as well as new features and
enhancements to core functionality to give users better clarity and
more control and flexibility over their data.

Multi-node architecture: In particular, with TimescaleDB 2.0, users
can now 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.

Multi-node TimescaleDB can be self managed or, for easier operation,
launched within Timescale's fully-managed cloud services.

This release also adds:

  • Support for user-defined actions, allowing users to define,
    customize, and schedule automated tasks, which can be run by the
    built-in jobs scheduling framework now exposed to users.
  • Significant changes to continuous aggregates, which now separate the
    view creation from the policy. Users can now refresh individual
    regions of the continuous aggregate materialized view, or schedule
    automated refreshing via policy.
  • Redesigned informational views, including new (and more general)
    views for information about hypertable's dimensions and chunks,
    policies and user-defined actions, as well as support for multi-node
    TimescaleDB.
  • Moving all formerly enterprise features into our Community Edition,
    and updating Timescale License, which now provides additional (more
    permissive) rights to users and developers.

Some of the changes above (e.g., continuous aggregates, updated
informational views) do introduce breaking changes to APIs and are not
backwards compatible. While the update scripts in TimescaleDB 2.0 will
upgrade databases running TimescaleDB 1.x automatically, some of these
API and feature changes may require changes to clients and/or upstream
scripts that rely on the previous APIs. Before upgrading, we recommend
reviewing upgrade documentation at docs.timescale.com for more details.

Major Features

TimescaleDB 2.0 moves the following major features to GA:

  • #1923 Add support for distributed hypertables
  • #2006 Add support for user-defined actions
  • #2125 #2221 Improve Continuous Aggregate API
  • #2084 #2089 #2098 #2417 Redesign informational views
  • #2435 Move enterprise features to community
  • #2437 Update Timescale License

Previous Release Candidates

  • #2702 Release Candidate 4 (December 2, 2020)
  • #2637 Release Candidate 3 (November 12, 2020)
  • #2554 Release Candidate 2 (October 20, 2020)
  • #2478 Release Candidate 1 (October 1, 2020)

Minor Features

Since the last release candidate 4, there are several minor
improvements:

  • #2746 Optimize locking for create chunk API
  • #2705 Block tableoid access on distributed hypertable
  • #2730 Do not allow unique index on compressed hypertables
  • #2764 Bootstrap data nodes with versioned extension

Bugfixes

Since the last release candidate 4, there are several bugfixes:

  • #2719 Support disabling compression on distributed hypertables
  • #2742 Fix compression status in chunks view for distributed chunks
  • #2751 Fix crash and cancel when adding data node
  • #2763 Fix check constraint on hypertable metadata table

Thanks

Thanks to all contributors for the TimescaleDB 2.0 release:

  • @airton-neto for reporting a bug in executing some queries with UNION
  • @nshah14285 for reporting an issue with propagating privileges
  • @kalman5 for reporting an issue with renaming constraints
  • @LbaNeXte for reporting a bug in decompression for queries with
    subqueries
  • @semtexzv for reporting an issue with continuous aggregates on
    int-based hypertables
  • @mr-ns for reporting an issue with privileges for creating chunks
  • @cloud-rocket for reporting an issue with setting an owner on
    continuous aggregate
  • @jocrau for reporting a bug during creating an index with transaction
    per chunk
  • @fvannee for reporting an issue with custom time types
  • @ArtificialPB for reporting a bug in executing queries with
    conditional ordering on compressed hypertable
  • @dutchgecko for reporting an issue with continuous aggregate datatype
    handling
  • @lambdaq for suggesting to improve error message in continuous
    aggregate creation
  • @francesco11112 for reporting memory issue on COPY
  • @Netskeh for reporting bug on time_bucket problem in continuous
    aggregates
  • @mr-ns for reporting the issue with CTEs on distributed hypertables
  • @akamensky for reporting an issue with recursive cache invalidation
  • @ryanbooz for reporting slow queries with real-time aggregation on
    continuous aggregates
  • @cevian for reporting an issue with disabling compression on
    distributed hypertables

The music for this release was Synchroncity by The Police.

2.0.0-rc4 (2020-12-02)

21 Dec 16:37
Compare
Choose a tag to compare
Pre-release

This release candidate contains bugfixes since the previous release
candidate, as well as additional minor features. It improves
validation of configuration changes for background jobs, adds support
for gapfill on distributed tables, contains improvements to the memory
handling for large COPY, and contains improvements to compression for
distributed hypertables.

Minor Features

  • #2689 Check configuration in alter_job and add_job
  • #2696 Support gapfill on distributed hypertable
  • #2468 Show more information in get_git_commit
  • #2678 Include user actions into job stats view
  • #2664 Fix support for complex aggregate expression
  • #2672 Add hypertable to continuous aggregates view
  • #2662 Save compression metadata settings on access node
  • #2707 Introduce additional db for data node bootstrapping

Bugfixes

  • #2688 Fix crash for concurrent drop and compress chunk
  • #2666 Fix timeout handling in async library
  • #2683 Fix crash in add_job when given NULL interval
  • #2698 Improve memory handling for remote COPY
  • #2555 Set metadata for chunks compressed before 2.0

2.0.0-rc3 (2020-11-12)

21 Dec 16:37
Compare
Choose a tag to compare
Pre-release

This release candidate contains bugfixes since the previous release
candidate, as well as additional minor features including support for
"user-mapping" authentication between access/data nodes and an
experimental API for refreshing continuous aggregates on individual
chunks.

Minor Features

  • #2627 Add optional user mappings support
  • #2635 Add API to refresh continuous aggregate on chunk

Bugfixes

  • #2560 Fix SCHEMA DROP CASCADE with continuous aggregates
  • #2593 Set explicitly all lock parameters in alter_job
  • #2604 Fix chunk creation on hypertables with foreign key constraints
  • #2610 Support analyze of internal compression table
  • #2612 Optimize internal cagg_watermark function
  • #2613 Refresh correct partial during refresh on drop
  • #2617 Fix validation of available extensions on data node
  • #2619 Fix segfault in decompress_chunk for chunks with dropped columns
  • #2620 Fix DROP CASCADE for continuous aggregate
  • #2625 Fix subquery errors when using AsyncAppend
  • #2626 Fix incorrect total_table_pages setting for compressed scan
  • #2628 Stop recursion in cache invalidation

2.0.0-rc2 (2020-10-20)

21 Dec 16:37
Compare
Choose a tag to compare
Pre-release

This release candidate contains bugfixes since the previous release candidate.

Minor Features

  • #2520 Support non-transactional distibuted_exec

Bugfixes

  • #2307 Overflow handling for refresh policy with integer time
  • #2503 Remove error for correct bootstrap of data node
  • #2507 Fix validation logic when adding a new data node
  • #2510 Fix outer join qual propagation
  • #2514 Lock dimension slices when creating new chunk
  • #2515 Add if_attached argument to detach_data_node()
  • #2517 Fix member access within misaligned address in chunk_update_colstats
  • #2525 Fix index creation on hypertables with dropped columns
  • #2543 Pass correct status to lock_job
  • #2544 Assume custom time type range is same as bigint
  • #2563 Fix DecompressChunk path generation
  • #2564 Improve continuous aggregate datatype handling
  • #2568 Change use of ssl_dir GUC
  • #2571 Make errors and messages conform to style guide
  • #2577 Exclude compressed chunks from ANALYZE/VACUUM

2.0.0-rc1 (2020-10-05)

21 Dec 16:38
Compare
Choose a tag to compare
Pre-release

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

1.7.4 (2020-09-07)

08 Sep 13:38
Compare
Choose a tag to compare

This maintenance release contains bugfixes since the 1.7.3 release. We deem it
high priority for upgrading if TimescaleDB is deployed with replicas (synchronous
or asynchronous).

In particular, the fixes contained in this maintenance release address an issue with
running queries on compressed hypertables on standby nodes.

Bugfixes

  • #2336 Remove tuple lock on select path

The music for this release was Rufus and Chaka Khan's 1974 classic Rags to Rufus.

1.7.3 (2020-08-27)

27 Aug 19:44
Compare
Choose a tag to compare

This maintenance release contains bugfixes since the 1.7.2 release. We deem it high
priority for upgrading.

In particular the fixes contained in this maintenance release address issues in compression,
drop_chunks and the background worker scheduler.

Bugfixes

  • #2059 Improve infering start and stop arguments from gapfill query
  • #2067 Support moving compressed chunks
  • #2068 Apply SET TABLESPACE for compressed chunks
  • #2090 Fix index creation with IF NOT EXISTS for existing indexes
  • #2092 Fix delete on tables involving hypertables with compression
  • #2164 Fix telemetry installed_time format
  • #2184 Fix background worker scheduler memory consumption
  • #2222 Fix negative bitmapset member not allowed in decompression
  • #2255 Propagate privileges from hypertables to chunks
  • #2256 Fix segfault in chunk_append with space partitioning
  • #2259 Fix recursion in cache processing
  • #2261 Lock dimension slice tuple when scanning

Thanks

  • @akamensky for reporting an issue with drop_chunks and ChunkAppend with space partitioning
  • @dewetburger430 for reporting an issue with setting tablespace for compressed chunks
  • @fvannee for reporting an issue with cache invalidation
  • @nexces for reporting an issue with ChunkAppend on space-partitioned hypertables
  • @PichetGoulu for reporting an issue with index creation and IF NOT EXISTS
  • @prathamesh-sonpatki for contributing a typo fix
  • @sezaru for reporting an issue with background worker scheduler memory consumption

The music for this release was Bob Dylan's Blonde on Blonde.

1.7.2 (2020-07-07)

07 Jul 18:26
Compare
Choose a tag to compare

This maintenance release contains bugfixes since the 1.7.1 release. We deem it medium
priority for upgrading.

In particular the fixes contained in this maintenance release address bugs in continuous
aggregates, drop_chunks and compression.

Features

  • #1877 Add support for fast pruning of inlined functions

Bugfixes

  • #1908 Fix drop_chunks with unique constraints when cascade_to_materializations is false
  • #1915 Check for database in extension_current_state
  • #1918 Unify chunk index creation
  • #1932 Change compression locking order
  • #1938 Fix gapfill locf treat_null_as_missing
  • #1982 Check for disabled telemetry earlier
  • #1984 Fix compression bit array left shift count
  • #1997 Add checks for read-only transactions
  • #2002 Reset restoring gucs rather than explicitly setting 'off'
  • #2028 Fix locking in drop_chunks
  • #2031 Enable compression for tables with compound foreign key
  • #2039 Fix segfault in create_trigger_handler
  • #2043 Fix segfault in cagg_update_view_definition
  • #2046 Use index tablespace during chunk creation
  • #2047 Better handling of chunk insert state destruction
  • #2049 Fix handling of PlaceHolderVar in DecompressChunk
  • #2051 Fix tuple concurrently deleted error with multiple continuous aggregates

Thanks

  • @akamensky for reporting an issue with telemetry and an issue with drop_chunks
  • @darko408 for reporting an issue with decompression
  • @Dmitri191 for reporting an issue with failing background workers
  • @eduardotsj for reporting an issue with indexes not inheriting tablespace settings
  • @FourSeventy for reporting an issue with multiple continuous aggregrates
  • @fvannee for contributing optimizations for pruning inlined functions
  • @jflambert for reporting an issue with failing telemetry jobs
  • @nbouscal for reporting an issue with compression jobs locking referenced tables
  • @Nicolai6120 for reporting an issue with locf and treat_null_as_missing
  • @NomAnor for reporting an issue with expression index with table references
  • @Olernov for contributing a fix for compressing tables with compound foreign keys
  • @werjo for reporting an issue with drop_chunks and unique constraints

The music for this release was David Bowie's The Rise and Fall of Ziggy Stardust and the Spiders From Mars.

1.7.1 (2020-05-18)

18 May 18:19
Compare
Choose a tag to compare

This maintenance release contains bugfixes since the 1.7.0 release. We deem it medium
priority for upgrading and high priority for users with multiple continuous aggregates.

In particular the fixes contained in this maintenance release address bugs in continuous
aggregates with real-time aggregation and PostgreSQL 12 support.

Bugfixes

  • #1834 Define strerror() for Windows
  • #1846 Fix segfault on COPY to hypertable
  • #1850 Fix scheduler failure due to bad next_start_time for jobs
  • #1851 Fix hypertable expansion for UNION ALL
  • #1854 Fix reorder policy job to skip compressed chunks
  • #1861 Fix qual pushdown for compressed hypertables where quals have casts
  • #1864 Fix issue with subplan selection in parallel ChunkAppend
  • #1868 Add support for WHERE, HAVING clauses with real time aggregates
  • #1869 Fix real time aggregate support for multiple continuous aggregates
  • #1871 Don't rely on timescaledb.restoring for upgrade
  • #1875 Fix hypertable detection in subqueries
  • #1884 Fix crash on SELECT WHERE NOT with empty table

Thanks

  • @airton-neto for reporting an issue with queries over UNIONs of hypertables
  • @dhodyn for reporting an issue with UNION ALL queries
  • @frostwind for reporting an issue with casts in where clauses on compressed hypertables
  • @fvannee for reporting an issue with hypertable detection in inlined SQL functions and an issue with COPY
  • @hgiasac for reporting missing where clause with real time aggregates
  • @louisth for reporting an issue with real-time aggregation and multiple continuous aggregates
  • @michael-sayapin for reporting an issue with INSERTs and WHERE NOT EXISTS
  • @Olernov for reporting and fixing an issue with compressed chunks in the reorder policy
  • @pehlert for reporting an issue with pg_upgrade

The music for this release was the Rolling Stone's Sticky Fingers.