TimescaleDB Toolkit 1.7.0 now available on Timescale Cloud

The Timescale Toolkit team is pleased to announce the release of the 1.7.0 version of the timescaledb_toolkit extension. While this release does not include any new functionality, it does contain incremental improvements for a lot of our experimental functionality.

First of all, we’ve moved away from using the PostgreSQL AnyElement type for our TopN and Frequency Aggregates. Unfortunately, working with AnyElement required the user to provide an otherwise useless type parameter to any API returning data from these aggregates. This was not a good user experience, especially because of an issue where some our underlying library code would intercept and discard calls with a NULL type argument. Instead these aggregates now implicitly convert the data to INT8 or TEXT, which results in a much cleaner experience. The AnyElement implementations are still available as raw_topn_agg and raw_freq_agg for the time being.

Secondly, we’ve enhanced our StateAggregate so that it reports durations using PostgreSQL Interval instead of Integer. This output type will be more useful for further time-based calculation on these values. It also ends up being much more readable with a one hour duration appearing as 1:00:00 as opposed to 3600000000.

Finally, we’ve beefed up the API for our Gauge Aggregate to bring it up to parity with the Counter Aggregate which it complements (prior to this it only supported variations of the delta accessor). This provides an enormous increase in the usability of this aggregate, and it should now be able to handle any Prometheus Gauge use case.

We hope that you find these improvements useful. Please try them out and let us know any further enhancements you’d like to see, or let us know what other functionality you’d like to see us implement. You can leave a response in this post, talk to us in our slack channel, or add an issue directly to our github repository.