KingDownloads

questdb version history

10 releases tracked, newest first.

9.4.3

Jun 15, 2026
- Added support for Parquet format at table level and memory-budgeted cache for Parquet access - Improved performance for `ORDER BY ... LIMIT N` queries with significant speedups - Fixed concurrent `ILP/TCP` stale-writes issue affecting certain data types - Introduced breaking changes to `LIMIT null` semantics and `EXPLAIN` plan output rewording

2 downloads

9.4.2

Jun 9, 2026
# QuestDB 9.4.2 QuestDB 9.4.2 is a hardening release that builds on 9.4.1, driven by continued fuzz testing and stricter query-result assertions. It includes bugfixes for the new posting index, parquet tables, temporal joins, and a variety of other SQL queries. This release also brings a Web Console upgrade, which brings some fixes and a new utility for sharing queries with your colleagues. For any questions or feedback, please join us on [Slack](https://slack.questdb.com/) or on [Discourse](https://community.questdb.com/). See also our _prettier_ [release notes](https://questdb.com/release-notes/) page. ## Breaking changes :boom: - **A plain `INDEX TYPE POSTING` (no `INCLUDE`) is now non-covering.** - `cairo.posting.index.auto.include.timestamp=true` was not intended to make all posting indexes covering by default. - This config flag automatically adds the designated timestamp to your `INCLUDE` list if you do not include it yourself. - This ensures that queries which return the designated timestamp will be executed via the covering index, and not accidentally fall back to table scans. - **`SHOW CREATE TABLE` now rejects views and materialized views.*

2 downloads

9.4.1

Jun 3, 2026
# QuestDB 9.4.1 QuestDB 9.4.1 is a hardening release that builds on 9.4.0. Introduction of our new SQL fuzz-testing engine and test framework improvements has flushed out more than **60** latent bugs around query correctness and resource leaks. 9.4.1 also brings additional hardening and bugfixes for the newly released posting/covering indexes, performance enhancements for materialised views, upgrades to parquet querying, and new aggregate and window functions. For any questions or feedback, please join us on [Slack](https://slack.questdb.com/) or on [Discourse](https://community.questdb.com/). See also our _prettier_ [release notes](https://questdb.com/release-notes/) page. ## Breaking changes :boom: - Parquet metadata files (`_pm`) will be migrated to a new version at startup. - Calculations of the shape `INT - FLOAT` now returns `FLOAT` type, not `DOUBLE`. - Nested `INT` calculations compared to `LONG` values will now run at 64-bit width. - `STRING` and `VARCHAR` with `<=/>= null` comparisons will now correctly return matching null rows. - `twap()` now correctly rejects non-designated timestamps. - `EXPLAIN` plan output has changed for non-keyed group by/s

2 downloads

9.4.0

May 18, 2026
# QuestDB 9.4.0 QuestDB 9.4.0 introduces a compact, high-performance posting and covering index for SYMBOL columns, a local parquet metadata sidecar that unlocks row-group pruning, parallelised SAMPLE BY FILL with new cross-column FILL(PREV) syntax, three new window functions, and `sparkline()` / `bar()` text visualisations. It also delivers meaningful GROUP BY / hash-join speed-ups and fixes a number of correctness issues across the SQL planner, the WAL apply path, and the PGWire protocol. For any questions or feedback, please join us on [Slack](https://slack.questdb.com/) or on [Discourse](https://community.questdb.com/). See also our _prettier_ [release notes](https://questdb.com/release-notes/) page. ## Highlights ### Posting and covering index for SYMBOL columns A new `INDEX TYPE POSTING` for SYMBOL columns delivers ~13x smaller index files and 1.3-1.5x faster lookups vs. the BITMAP index, at a ~9% write-amplification cost. An optional `INCLUDE (...)` list builds a *covering* sidecar so queries that read only the indexed column plus the included columns skip the column files entirely: ```sql CREATE TABLE trades ( ts TIMESTAMP, sym SYMBOL INDEX T

2 downloads

9.3.5

Apr 13, 2026
# QuestDB 9.3.5 QuestDB 9.3.5 introduces lateral joins, SQL-standard UNNEST, statistical window functions, and corrects SAMPLE BY timezone handling during DST transitions. It also delivers multiple join performance improvements and important Parquet export fixes. For any questions or feedback, please join us on [Slack](https://slack.questdb.com/) or on [Discourse](https://community.questdb.com/). See also our _prettier_ [release notes](https://questdb.com/release-notes/) page. ## Breaking changes :boom: * **SAMPLE BY timezone bucket alignment**: Sub-day SAMPLE BY queries with ALIGN TO CALENDAR TIME ZONE now produce correct bucket alignment during DST transitions. Key changes: - Sub-day buckets are uniformly spaced in UTC using the timezone's standard offset. During DST fall-back, repeated local hours produce separate rows instead of merging. - FROM/TO boundaries are now interpreted as local time in the specified timezone (previously UTC). - Queries without TIME ZONE, with fixed-offset timezones, or with super-day strides (day+) are unaffected. - See https://questdb.com/docs/query/sql/sample-by/#time-zone-transitions for details. - by [@amunra](https://

2 downloads

9.3.4

Mar 26, 2026
# QuestDB 9.3.4 QuestDB 9.3.4 delivers dynamic windows in WINDOW JOIN, Parquet row group pruning with bloom filters, new array functions, and significant performance improvements across ORDER BY, joins, and Parquet I/O. For any questions or feedback, please join us on [Slack](https://slack.questdb.com/) or on [Discourse](https://community.questdb.com/). See also our *prettier* [release notes](https://questdb.com/release-notes/) page. ## Breaking changes 💥 * **Parquet Varchar encoding default changed**: Parquet export now uses `RLE Dictionary` encoding for Varchar columns instead of `Delta Length Byte Array`. Parquet files written by 9.3.4 use the new encoding by default. If downstream tools or pipelines depend on the previous encoding, use the new per-column encoding config to override. * by [@RaphDal](https://github.com/RaphDal) in [#6809](https://github.com/questdb/questdb/pull/6809) * **Constant expression folding**: The SQL engine now folds constant expressions at compile time, which aligned compile-time behaviour of `NaN`/`Infinity` values with their runtime behaviour. `Infinity` and `-Infinity` in constant float/double expressions are now collapsed to NULL

2 downloads

9.3.3

Feb 25, 2026
# QuestDB 9.3.3 QuestDB 9.3.3 is a feature-rich release introducing HORIZON JOIN for markout analysis, a new `twap()` aggregate, SQL-standard WINDOW definitions, JIT compilation on ARM64, and file-based secrets for Kubernetes deployments. It also brings significant performance improvements across Parquet I/O, parallel GROUP BY, UNION queries, and ORDER BY on computed expressions. For any questions or feedback, please join us on [Slack](https://slack.questdb.com/) or on [Discourse](https://community.questdb.com/). See also our _prettier_ [release notes](https://questdb.com/release-notes/) page. ## Highlights ### HORIZON JOIN for markout analysis HORIZON JOIN is a new join type designed for markout analysis — a common financial analytics pattern where you measure how prices or metrics evolve at specific time offsets relative to events like trades or orders. For each row in the left-hand table and each offset in the horizon, the join computes `left_timestamp + offset` and performs an ASOF match against the right-hand table. Results are implicitly grouped by the horizon offset and any specified keys, with aggregate functions applied across all matched rows. Here

2 downloads

9.3.2

Jan 28, 2026
# QuestDB 9.3.2 QuestDB 9.3.2 continues the trend of performance upgrades and bugfixes, with some additional new features. Importantly, we introduce the new TICK syntax, a compact DSL for expressing time intervals, alongside faster aggregations, improved applicability of interval scans, and fast parquet queries. For any questions or feedback, please join us on [Slack](https://slack.questdb.com/) or on [Discourse](https://community.questdb.com/). See also our _prettier_ [release notes](https://questdb.com/release-notes/) page. ## Highlights ### New TICK syntax The Temporal Interval Calendar Kit ([TICK](https://questdb.com/docs/query/operators/tick/) is a new DSL for expressing complex time ranges and intervals in a compact, easy-to-use format. For example, let's say that you want to query one month of data from NYSE, only including trading days and hours. The data in the database is stored in UTC format, so you'd need to convert to different time zones, and build a very complex WHERE clause with ANDs and ORs. Or, alternatively, send lots of narrow queries and combine the results. Instead, you can express this in a simple string: ```sql -- NYSE trading hou

2 downloads

9.3.1

Jan 14, 2026
# QuestDB 9.3.1 QuestDB 9.3.1 follows the major 9.3.0 release, focusing on stability, correctness, and performance refinements based on early feedback and production usage. This release delivers targeted fixes across joins, views, and checkpointing, alongside continued performance improvements on hot SQL execution paths. ## Improvements ### Arithmetic expressions in window functions Window functions now support arithmetic expressions directly, allowing analytical queries to compute derived values inline without requiring subqueries or post-processing: ```sql SELECT symbol, price, price - lag(price) OVER (PARTITION BY symbol ORDER BY ts) AS delta FROM trades ``` This simplifies common patterns such as calculating deltas, ratios, and scaled values within window definitions. ### Extended `tables()` metadata The `tables()` system view now exposes two additional columns: - `table_min_timestamp` - `table_max_timestamp` These columns provide quick visibility into the temporal bounds of each table, useful for diagnostics, retention checks, and operational tooling. ### `ksum()` window function The `ksum()` function now works as a window func

2 downloads

9.3.0

Jan 9, 2026
# QuestDB 9.3.0 QuestDB 9.3.0 is now available, bringing a new wave of query expressiveness and usability improvements across the engine and the Web Console. This release introduces window joins for precise time-based analytics, database views for cleaner query composition, AI-assisted workflows in the web console, and the new PIVOT keyword for effortless wide-schema aggregations. For any questions or feedback, please join us on [Slack](https://slack.questdb.com/) or on [Discourse](https://community.questdb.com/). See also our _prettier_ [release notes](https://questdb.com/release-notes/) page. ## New Features ### Views Views are virtual tables defined by a `SELECT` statement. They do not persist data on disk. Instead, the underlying query is executed as a subquery each time the view is referenced. Complex calculations and logic can be captured in a view, and shared across database users. ```sql CREATE VIEW latest_trades AS SELECT symbol, side, last(price) AS price, last(timestamp) AS ts FROM trades GROUP BY symbol, side; ``` Views can be queried just like tables, while always reflecting the latest data from their source tables. #### P

2 downloads