|
4 | 4 | `psql` with the `-X` flag to prevent any `.psqlrc` commands from
|
5 | 5 | accidentally triggering the load of a previous DB version.**
|
6 | 6 |
|
| 7 | +## 2.19.0 (2025-03-18) |
| 8 | + |
| 9 | +This release contains performance improvements and bug fixes since the 2.18.2 release. We recommend that you upgrade at the next available opportunity. |
| 10 | +**Highlights of the v2.19.0 release** |
| 11 | +* Improved concurrency of INSERT, UPDATE and DELETE operations on the columnstore by no longer blocking DML statements during the recompression of a chunk. |
| 12 | +* Improved system performance during Continuous Aggregates refreshes by breaking them into smaller batches which reduces systems pressure and minimizes the risk of spilling to disk. |
| 13 | +* Faster and more up-to-date results for queries against Continuous Aggregates by materializing the most recent data first (vs old data first in prior versions). |
| 14 | +* Faster analytical queries with SIMD vectorization of aggregations over text columns and group by over multiple columns. |
| 15 | +* Enable optimizing chunk size for faster query performance on the columnstore by adding support for merging columnstore chunks to the `merge_chunk` API. |
| 16 | + |
| 17 | +**Deprecation warning** |
| 18 | + |
| 19 | +This is the last minor release supporting PostgreSQL 14. Starting with the minor version of TimescaleDB only Postgres 15, 16 and 17 will be supported. |
| 20 | + |
| 21 | +**Downgrading from 2.19.0** |
| 22 | + |
| 23 | +This release introduces custom bool compression, if you enable this feature via the `enable_bool_compression` and must downgrade to a previous, please use the [following script](https://github.com/timescale/timescaledb-extras/blob/master/utils/2.19.0-downgrade_new_compression_algorithms.sql) to convert the columns back to their previous state. TimescaleDB versions prior to 2.19.0 do not know how to handle this new type. |
| 24 | + |
| 25 | +**Features** |
| 26 | +* [#7586](https://github.com/timescale/timescaledb/pull/7586) Vectorized aggregation with grouping by a single text column. |
| 27 | +* [#7632](https://github.com/timescale/timescaledb/pull/7632) Optimize recompression for chunks without segmentby |
| 28 | +* [#7655](https://github.com/timescale/timescaledb/pull/7655) Support vectorized aggregation on Hypercore TAM |
| 29 | +* [#7669](https://github.com/timescale/timescaledb/pull/7669) Add support for merging compressed chunks |
| 30 | +* [#7701](https://github.com/timescale/timescaledb/pull/7701) Implement a custom compression algorithm for bool columns. It is experimental and can undergo backwards-incompatible changes. For testing, enable it using timescaledb.enable_bool_compression = on. |
| 31 | +* [#7707](https://github.com/timescale/timescaledb/pull/7707) Support ALTER COLUMN SET NOT NULL on compressed chunks |
| 32 | +* [#7765](https://github.com/timescale/timescaledb/pull/7765) Allow tsdb as alias for timescaledb in WITH and SET clauses |
| 33 | +* [#7786](https://github.com/timescale/timescaledb/pull/7786) Show warning for inefficient compress_chunk_time_interval configuration |
| 34 | +* [#7788](https://github.com/timescale/timescaledb/pull/7788) Add callback to mem_guard for background workers |
| 35 | +* [#7789](https://github.com/timescale/timescaledb/pull/7789) Do not recompress segmentwise when default order by is empty |
| 36 | +* [#7790](https://github.com/timescale/timescaledb/pull/7790) Add configurable Incremental CAgg Refresh Policy |
| 37 | + |
| 38 | +**Bugfixes** |
| 39 | +* [#7665](https://github.com/timescale/timescaledb/pull/7665) Block merging of frozen chunks |
| 40 | +* [#7673](https://github.com/timescale/timescaledb/pull/7673) Don't abort additional INSERTs when hitting first conflict |
| 41 | +* [#7714](https://github.com/timescale/timescaledb/pull/7714) Fixes a wrong result when compressed NULL values were confused with default values. This happened in very special circumstances with alter table added a new column with a default value, an update and compression in a very particular order. |
| 42 | +* [#7747](https://github.com/timescale/timescaledb/pull/7747) Block TAM rewrites with incompatible GUC setting |
| 43 | +* [#7748](https://github.com/timescale/timescaledb/pull/7748) Crash in the segmentwise recompression |
| 44 | +* [#7764](https://github.com/timescale/timescaledb/pull/7764) Fix compression settings handling in Hypercore TAM |
| 45 | +* [#7768](https://github.com/timescale/timescaledb/pull/7768) Remove costing index scan of hypertable parent |
| 46 | +* [#7799](https://github.com/timescale/timescaledb/pull/7799) Handle DEFAULT table access name in ALTER TABLE |
| 47 | + |
| 48 | +**GUCs** |
| 49 | +* enable_bool_compression: enable the BOOL compression algorithm, default: OFF |
| 50 | +* `enable_exclusive_locking_recompression`: enable exclusive locking during recompression (legacy mode), default: `OFF` |
| 51 | + |
| 52 | +**Thanks** |
| 53 | +* @bjornuppeke for reporting a problem with INSERT INTO ... ON CONFLICT DO NOTHING on compressed chunks |
| 54 | +* @kav23alex for reporting a segmentation fault on ALTER TABLE with DEFAULT |
| 55 | + |
7 | 56 | ## 2.18.2 (2025-02-19)
|
8 | 57 |
|
9 | 58 | This release contains performance improvements and bug fixes since
|
|
0 commit comments