TimescaleDB 2.30.0

2.30.0

2.30.0 (2026-09-08)

Added 6
  • Support segmentwise batch sorted merge for overlapping batches
  • Add DeferredChunkAppend custom scan node that reduces planning overhead by delaying chunk expansion until execution
  • Add DML support for concurrent compaction
  • Add custom toaster for compression
  • Add enable_deferred_chunk_append GUC to control custom scan node for hypertables
  • Add use_custom_toaster GUC to use custom TOAST writer for compressed row inserts
Fixed 14
  • Apply new sortkeys for in-memory recompression
  • Include hypertable chunks in publications created with FOR TABLES IN SCHEMA
  • Avoid test errors when building from a source archive without a git repository
  • Verify columns and their types in create_compressed_chunk
  • Fix row level security checks after dropping hypertable columns
  • Fix potentially incorrect result of a join when the join clause contains time_bucket

From TimescaleDB

This release contains performance improvements and bug fixes since the 2.29.2 release. We recommend that you upgrade at the next available opportunity.

Highlighted features in TimescaleDB v2.30.0 Blazing fast LIMIT queries with the newly introduced DeferredChunkAppend. This custom node reduces planning significantly by delaying chunk expansion. During planning the hypertable stays unexpanded and only during execution are chunks enumerated on demand. Combined with the optimizations to FIRST and LAST sparse indexes, this addition executes last-point queries far more efficiently and quickly. This changes the scaling of the "What is the last reading from this sensor" query from linear with number of chunks to constant if it can be found in the most recent chunk. The true power of the custom node starts to show with increasing amount of chunks, see more elaborate benchmarks.

Features

Bugfixes

GUCs

  • enable_deferred_chunk_append: Custom scan node for hypertables that iterates chunks at execution instead of expanding every chunk at plan time. Default: true.
  • use_custom_toaster: Use a custom TOAST writer for compressed row inserts. Default: false.

Thanks

View original

Upgraded? How did it go?

Discussion