HN
Today

Looking Ahead to Postgres 19

Postgres 19 is shaping up to be a multifaceted release, offering a wide array of enhancements that cater to both developers and operators. Key features like REPACK CONCURRENTLY, SQL property graph queries, and advanced logical replication promise significant quality-of-life and performance gains. This broad set of improvements reinforces Postgres's position as a versatile and continuously evolving database, making it highly anticipated by the Hacker News community.

5
Score
0
Comments
#1
Highest Rank
4h
on Front Page
First Seen
Jun 30, 2:00 PM
Last Seen
Jun 30, 5:00 PM
Rank Over Time
11137

The Lowdown

Postgres 19, now in beta, is described as a release with a 'bit of everything,' combining major headline features with numerous quality-of-life improvements and steady performance boosts. The article highlights that this release is designed to make running production systems smoother and more robust, from core maintenance to advanced querying capabilities. Developers and operators are encouraged to begin testing the beta version to ensure compatibility and provide feedback.

  • REPACK out of the box: Introduces REPACK CONCURRENTLY directly into core, addressing table bloat and data reorganization without requiring locks, a feature previously available only via extensions like pg_repack.
  • Partitioning gets more practical: Adds support for merging and splitting partitions, providing greater flexibility to evolve database designs as workloads and data volumes change, rather than requiring re-architecting from scratch.
  • Logical replication matures: Significant advancements include synchronizing sequence values between publisher and subscriber, support for EXCEPT clauses in publications, and automatic wal_level enablement, making it more robust for migrations, upgrades, and high-availability.
  • Autovacuum gets smarter and easier to see: Enhancements include parallel vacuum workers, a new scoring system for prioritizing tables, and increased visibility into autovacuum operations through new views and logging.
  • SQL property graph queries: Integrates SQL/PGQ, allowing graph-style queries on existing relational data without needing a separate graph database, thus reducing operational complexity for use cases like fraud detection or network analysis.
  • COPY improvements: The COPY command gains practical features such as skipping multiple header lines, ON_ERROR SET_NULL for invalid inputs, JSON output support for COPY TO, and direct output for partitioned tables.
  • SQL quality-of-life: Introduces GROUP BY ALL, IGNORE NULLS/RESPECT NULLS for window functions, INSERT ... ON CONFLICT DO SELECT ... RETURNING for better upsert flexibility, and UPDATE/DELETE FOR PORTION OF for temporal use cases.
  • Performance boosts: Continual improvements to the planner and executor, including better handling of anti-joins, semi-joins, aggregate processing, and SIMD instructions for COPY FROM, ensure that Postgres automatically performs more efficiently with upgrades.

Overall, Postgres 19 stands out for its comprehensive breadth, offering valuable features for application developers, database operators, performance enthusiasts, and extension builders alike. This makes it an essential release for the continued evolution of the platform, and early testing is crucial to ensure a smooth transition.