PostgreSQL: SQL Property Graphs Land with a Bang
A massive day for PostgreSQL with the landing of SQL Property Graph Queries (SQL/PGQ) - a complete implementation of the ISO/IEC 9075-16:2023 standard. Along with this major feature, the team delivered 14 other commits including header cleanup optimizations, pg_upgrade fixes, and stats improvements, showing incredible momentum in the codebase.
Duration: PT4M17S
Transcript
Hey everyone, and welcome back to another episode of the PostgreSQL podcast! I'm your host, and wow - do we have an exciting episode for you today. Grab your favorite beverage because we're diving into what might be one of the most significant feature drops we've seen in PostgreSQL in quite some time.
So here's what happened yesterday - the team delivered 15 commits with zero merged pull requests, which tells us the core team has been heads-down, pushing some serious code directly to the main branch. And when I say serious, I mean *serious*.
Let's start with the absolute showstopper - Peter Eisentraut just landed SQL Property Graph Queries, also known as SQL/PGQ. This is a complete implementation of the ISO/IEC 9075-16:2023 standard, and folks, this is *huge*. We're talking about native graph database capabilities right inside PostgreSQL.
What does this mean for you? Well, you now get a GRAPH_TABLE table function for graph pattern matching, new DDL commands like CREATE, ALTER, and DROP PROPERTY GRAPH, and several brand new system catalogs. Peter even added psql support with a new \dG command - how cool is that? This feature represents months, maybe years of work, and it's now available for you to experiment with.
But the team didn't stop there. Álvaro Herrera and Andres Freund delivered what I like to call "the great header cleanup of 2026" - reducing header inclusions via execnodes.h. Now, this might sound boring, but trust me, this kind of work is gold for compilation times and code maintainability. They touched over 112 files, cleaning up dependencies and making the codebase more modular.
Peter Eisentraut also fixed a tricky pg_upgrade issue that was causing failures when extension_control_path is used. Jonathan Gonzalez V. authored this fix, which shows the fantastic community collaboration we love to see. If you've ever run into weird pg_upgrade failures with custom extensions, this one's for you.
The stats lovers among you will appreciate Sami Imseih's work adding a stats_reset column to pg_statio_all_sequences. It's one of those "why didn't we have this already?" improvements that just makes perfect sense. Though I have to chuckle - they had to remove some unstable tests because the buildfarm member called "crake" was being a bit too enthusiastic with concurrent activity!
We also saw some nice quality-of-life improvements. Michael Paquier made ALTER TABLE CLUSTER commands fail earlier and more gracefully for partitioned tables. Nathan Bossart fixed pg_dumpall to catch incompatible options before they cause problems. These might seem small, but they save developers real frustration in the field.
And for those of you following along with the modernization efforts, Peter and Bertrand Drouvot are steadily moving PostgreSQL toward C11 standards, replacing old alignment attributes with the modern alignas keyword. It's part of the ongoing effort to make PostgreSQL's codebase more contemporary and maintainable.
What I love about this activity is how it shows PostgreSQL firing on all cylinders - major features, performance optimizations, user experience improvements, and code quality enhancements all happening simultaneously.
Today's focus: If you're curious about graph databases but have been intimidating by learning new systems, now's the perfect time to explore SQL/PGQ in your PostgreSQL development environment. Start simple - create a basic property graph and play with the GRAPH_TABLE function. The documentation in ddl.sgml and queries.sgml will be your best friend.
For those working with extensions and pg_upgrade, definitely test the new extension_control_path fixes if that's been causing you headaches.
That's a wrap for today! The PostgreSQL team continues to amaze with their pace and quality of development. Until next time, keep coding, keep learning, and remember - every commit is a step forward in this incredible journey we're all on together. Catch you tomorrow!