Skip to main content
0.19.0 contains breaking changes to a few query functions: paradedb.score, paradeb.snippet, and paradedb.more_like_this. These functions have been renamed to pdb.score, pdb.snippet, and pdb.more_like_this.

New Features 🎉

Broadened Aggregate Pushdown Support

The custom aggregate scan has pushdown support for several new query types. The first is FILTER, which is analogous to the Elastic filters aggregation. It allows a single query to efficiently collect aggregates over multiple WHERE clauses:
SELECT
  COUNT(*) FILTER (WHERE category @@@ 'electronics') AS electronics,
  COUNT(*) FILTER (WHERE category @@@ 'books') AS books,
  AVG(price) FILTER (WHERE status @@@ 'available') AS avg_available_price
FROM products
GROUP BY brand;
The second is pushdown support for COALESCE within an aggregate:
SELECT AVG(COALESCE(price, 0)) FROM products WHERE status @@@ 'available';
And the third is support for COUNT over a specific field (previously, only COUNT(*) was pushed down):
SELECT COUNT(price) FROM products WHERE status @@@ 'available';

Logical Replication Support

Previously, logical replication was an enterprise-only feature. We have made this feature available in ParadeDB Community, which means that ParadeDB Community can now run as a logical replica.
Logical replication in ParadeDB is supported for PG17+ only.

New v2 API Capabilities

We have made significant progress on the new v2 API. A non-exhaustive list of additions includes:

Performance Improvements 🚀

Write Throughput

We have made significant improvements to ParadeDB’s write throughput, especially for single-row updates. The first change is a new “mutable segment” data structure, designed to incur the minimal possible overhead during a single-row write. The overhead of tokenizing, serializing, and flushing an immutable segment is now completely gone for these single-row writes. The second is a new free space map data structure, backed by an AVL tree. This data structure was designed to minimize lock contention during heavy, concurrent writes. The full changelog is available on the GitHub Release.