Releases: timescale/timescaledb
1.2.1 (2019-02-11)
This release contains bugfixes.
Notable commits
- [2f6b58a] Fix tlist on hypertable inserts inside CTEs
- [7973b4a] Stop background worker on rename database
- [32cc645] Fix loading the tsl license in parallel workers
Thanks
- @jamessewell for reporting and helping debug a segfault in last() [034a0b0]
- @piscopoc for reporting a segfault in time_bucket_gapfill [e6c68f8]
The music for this release was Mark Ronson's Version.
1.2.0 (2019-01-29)
This is our first release to include Timescale-Licensed features, in addition to new Apache-2 capabilities.
We are excited to be introducing new time-series analytical functions, advanced data lifecycle management capabilities, and improved performance.
- Time-series analytical functions: Users can now use our
time_bucket_gapfillfunction, to write complex gapfilling, last object carried forward, and interpolation queries. - Advanced data lifecycle management: We are introducing scheduled policies, which use our background worker framework to manage time-series data. In this release, we support scheduled
drop_chunksandreorder. - Improved performance: We added support for ordered appends, which optimize a large range of queries - particularly those that are ordered by time and contain a LIMIT clause. Please note that ordered appends do not support ordering by
time_bucketat this time. - Postgres 11 Support: We added beta support for PG11 in 1.1.0. We're happy to announce that our PG11 support is now out of beta, and fully supported.
- Deprecation of adaptive chunking: Our initial implementation of adaptive chunking did not perform to a level we were satisfied with, so this release deprecates the current way of using it.
This release adds code under a new license, LICENSE_TIMESCALE. This code can be found in tsl.
Notable commits
- [a531733] switch cis state when we switch chunks
- [5c6b619] Make a copy of the ri_onConflict object in PG11
- [61e524e] Make slot for upserts be update for every chunk switch
- [8a7c127] Fix for ExecSlotDescriptor during upserts
- [fa61613] Change time_bucket_gapfill argument names
- [01be394] Fix bgw_launcher restart when failing during launcher setup
- [7b3929e] Add ordered append optimization
- [a69f84c] Fix signal processing in background workers
- [47b5b7d] Log which chunks are dropped by background workers
- [4e1e15f] Add reorder command
- [2e4bb5d] Recluster and drop chunks scheduling code
- [ef43e52] Add alter_policy_schedule API function
- [5ba740e] Add gapfill query support
- [be7c74c] Add logic for automatic DB maintenance functions
- [4ff6ac7] Initial Timescale-Licensed-Module and License-Key Implementation
- [fc42539] Add new top-level licensing information
- [31e9c5b] Fix time column handling in get_create_command
- [1b8ceca] Avoid loading twice in parallel workers and load only from $libdir
- [76d7875] Don't throw errors when extension is loaded but not installed yet
- [eecd845] Add Timescale License (TSL)
- [4b42b30] Free ChunkInsertStates when the es_per_tuple_exprcontext is freed
Thanks
- @fordred for reporting our docker-run.sh script was out of date
- @JpWebster for reporting a deadlock between reads an drop_chunks
- @chickenburgers for reporting an issue with our CMake
- Dimtrj and Asbjørn D., on slack, for creating a reproducible testcase for an UPSERT bug
The music for this release was The Who's Tommy.
1.1.1 (2018-12-20)
High-level changes
- Fix issue when upgrading with pg_upgrade
- Fix a segfault that sometimes appeared in long COPYs
- Other bug and stability fixes
- Release changes: This release will not be released on Debian 7 (obsoleted since June). Additionally, packages for Ubuntu 17.10 will be removed as they have been out-of-date since 17.10 was obsoleted in the summer.
Notable commits
- [f99b540] Avoid loading twice in parallel workers and load only from $libdir
- [e310f7d] Don't throw errors when extension is loaded but not installed yet
- [8498416] Free ChunkInsertStates when the es_per_tuple_exprcontext is freed
- [937eefe] Set C standard to C11
Thanks
- @costigator for reporting the pg_upgrade bug
- @FireAndIce68 for reporting the parallel workers issue
- @damirda for reporting the copy bug
1.1.0 (2018-12-13)
Our 1.1 release introduces beta support for PG 11, as well as several performance optimizations aimed at improving chunk exclusion for read queries. We are also packaging our new timescale-tune tool (currently in beta) with our Debian and Linux releases. If you encounter any issues with our beta features, please file a Github issue.
Potential breaking changes
In addition to optimizing first() / last() to utilize indices for non-group-by queries, we adjusted its sorting behavior to match that of PostgreSQL’s max() and min() functions. Previously, if the column being sorted had NULL values, a NULL would be returned. First() and last() now instead ignore NULL values.
Notable Commits
- [71f3a0c] Fix Datum conversion issues
- [5aa1eda] Refactor compatibility functions and code to support PG11
- [e4a4f8e] Add support for functions on open (time) dimensions
- [ed5067c] Fix interval_from_now_to_internal timestamptz handling
- [019971c] Optimize FIRST/LAST aggregate functions
- [83014ee] Implement drop_chunks in C
- [9a34028] Implement show_chunks in C and have drop_chunks use it
- [d461959] Add view to show hypertable information
- [35dee48] Remove version-checking from client-side
- [5b6a5f4] Change size utility and job functions to STRICT
- [7e55d91] Add checks for NULL arguments to DDL functions
- [c1db608] Fix upsert TLE translation when mapping variable numbers
- [55a378e] Check extension exists for DROP OWNED and DROP EXTENSION
- [0c8c085] Exclude unneeded chunks for IN/ANY/ALL operators
- [f27c0a3] Move int time_bucket functions with offset to C
Thanks
- @did-g for some memory improvements
1.0.1 (2018-12-05)
This commit contains bugfixes and optimizations for 1.0.0
Notable commits
- [6553aa4] Make a number of size utility functions to
STRICT - [bb1d748] Add checks for NULL arguments to
set_adaptive_chunking,set_number_partitions,set_chunk_time_interval,add_dimension, andcreate_hypertable - [a534ed4] Fix upsert TLE translation when mapping variable numbers
- [aecd55b] Check extension exists for DROP OWNED and DROP EXTENSION
1.0.0 (2018-10-30)
This is our 1.0 release!
For notable commits between 0.12.0/0.12.1 and this final 1.0 release, please see previous entries for the release candidates (rc1, rc2, and rc3).
Thanks
To all the external contributors who helped us debug the release candidates, as well as anyone who has contributed bug reports, PRs, or feedback on Slack, GitHub, and other channels. All input has been valuable and helped us create the product we have today!
Potential breaking changes
- To better align with the ISO standard so that time bucketing starts each week by default on a Monday (rather than Saturday), the
time_bucketepoch/origin has been changed from January 1, 2000 to January 3, 2000. The function now includes anoriginparameter that can be used to adjust this. - Error codes are now prefixed with
TSinstead of the priorIOprefix. If you were checking for these error codes by name, please update your code.
1.0.0-rc3 (2018-10-18)
This release is our third 1.0 release candidate. We expect to only merge bug fixes between now and our final 1.0 release. This is a big milestone for us and signifies our maturity and enterprise readiness.
PLEASE NOTE that release candidate (rc) builds will only be made available via GitHub and Docker, and not on other release channels. Please help us test these release candidates out if you can!
Potential breaking change: Starting with rc2, we updated our error codes to be prefixed with TS instead of the old IO prefix. If you were checking for these error codes by name, please update your checks.
Notable commits
- [f7ba13d] Handle and test tablespace changes to and from the default tablespace
- [9ccda0d] Start stopped workers on restart message
- [3e3bb0c] Add bool created to create_hypertable and add_dimension return value
- [53ff656] Add state machine and polling to launcher
- [d9b2dfe] Change return value of add_dimension to TABLE
- [19299cf] Make all time_bucket function STRICT
- [297d885] Add a version of time_bucket that takes an origin
- [e74be30] Move time_bucket epoch to a Monday
- [46564c1] Handle ALTER SCHEMA RENAME properly
- [a83e283] Change return value of create_hypertable to TABLE
- [aea7c7e] Add GRANTs to update script for pg_dump to work
- [119963a] Replace hardcoded bash path in shell scripts
Thanks
- @jesperpedersen for several PRs that help improve documentation and some rough edges
- @did-g for improvements to our build process
- @skebanga for reporting an issue with ALTER SCHEMA RENAME
- @p-alik for suggesting a way to improve our bash scripts' portability
- @mx781 and @HeikoOnnebrink for reporting an issues with permission GRANTs and ownership when using pg_dump
1.0.0-rc2 (2018-09-28)
This release is our second 1.0 release candidate. We expect to only merge bug fixes between now and our final 1.0 release. This is a big milestone for us and signifies our maturity and enterprise readiness.
PLEASE NOTE that release candidate (rc) builds will only be made available via GitHub and Docker, and not on other release channels. Please help us test these release candidates out if you can!
Potential breaking change: We updated our error codes to be prefixed with TS instead of the old IO prefix. If you were checking for these error codes by name, please update your checks.
Notable commits
- [b43574f] Switch 'IO' error prefix to 'TS'
- [9747885] Prefix public C functions with ts_
- [39510c3] Block unknown alter table commands on hypertables
- [2408a83] Add support for ALTER TABLE SET TABLESPACE on hypertables
- [41d9846] Enclose macro replacement list and arguments in parentheses
- [cc59d51] Replace macro LEAST_TIMESTAMP by a static function
- [281f363] Modify telemetry BGW to run every hour the first 12 hours
- [a09b3ec] Add pg_isolation_regress support to the timescale build system
- [2c267ba] Handle SIGTERM/SIGINT asynchronously
- [5377e2d] Fix use-after-free bug for connections in the telemetry BGW
- [248f662] Fix pg_dump for unprivileged users
- [193fa4a] Stop background workers when extension is DROP OWNED
- [625e3fa] Fix negative value handling in int time_bucket
- [a33224b] Add loader API version function
- [18b8068] Remove unnecessary index on dimension metadata table
- [d09405d] Fix adaptive chunking when hypertables have multiple dimensions
- [a81dc18] Block signals when writing to the log table in tests
- [d5a6392] Fix adaptive chunking so it chooses correct index
- [3489cca] Fix sigterm handling in background jobs
- [2369ae9] Remove !WIN32 for sys/time.h and sys/socket.h, pg provides fills
- [ebbb4ae] Also add sys/time.h for NetBSD. Fixes #700
- [1a9ae17] Fix build on FreeBSD wrt sockets
- [8225cd2] Remove (redefined) macro PG_VERSION and replace with PACKAGE_VERSION
- [2a07cf9] Release SpinLock even when we're about to Error due to over-decrementing
- [b2a15b8] Make sure DB schedulers are not decremented if they were never incremented
- [6731c86] Add support for pre-release version checks
Thanks
- @did-g for an improvement to our macros to make compiliers happy
- @mx781 and @HeikoOnnebrink for reporting issues with working with pg_dump fully
- @znbang and @timolson for reporting a bug that was causing telemetry to fail
- @alanhamlett for reporting an issue with spinlocks when handling SIGTERMs
- @oldgreen for reporting an issue with building on NetBSD
- @kev009 for fixing build issues on FreeBSD and NetBSD
- All the others who have helped us test and used these RCs!
0.12.1 (2018-09-19)
High-level changes
- Fixes for a few issues related to the new scheduler and background worker framework.
- Fixed bug in adaptive chunking where the incorrect index could be used for determining the current interval.
- Improved testing, code cleanup, and other housekeeping.
Notable commits
- [0f6f7fc] Fix adaptive chunking so it chooses correct index
- [3ed79ed] Fix sigterm handling in background jobs
- [bea098f] Remove !WIN32 for sys/time.h and sys/socket.h, pg provides fills
- [9f62a1a] Also add sys/time.h for NetBSD. Fixes #700
- [95a982f] Fix build on FreeBSD wrt sockets
- [fcb4a79] Remove (redefined) macro PG_VERSION and replace with PACKAGE_VERSION
- [2634897] Release SpinLock even when we're about to Error due to over-decrementing
- [1f30dbb] Make sure DB schedulers are not decremented if they were never incremented
- [f518cd0] Add support for pre-release version checks
- [acebaea] Don't start schedulers for template databases.
- [f221a12] Fix use-after-free bug in telemetry test
- [0dc5bbb] Use pg_config bindir directory for pg executables
Thanks
1.0.0-rc1 (2018-09-12)
This release is our 1.0 release candidate! We expect to only merge bug fixes between now and our final 1.0 release. This is a big milestone for us and signifies our maturity and enterprise readiness.
PLEASE NOTE that release candidate (rc) builds will only be made available via GitHub and Docker, and not on other release channels. Please help us test these release candidates out if you can!
Notable commits
- [acebaea] Don't start schedulers for template databases.
- [f221a12] Fix use-after-free bug in telemetry test
- [2092b2a] Fix unused variable warning in Release build
- [0dc5bbb] Use pg_config bindir directory for pg executables
Thanks
- @did-g for reporting a use-after-free bug in a test and for improving the robustness of another test