Neues vom PostgreSQL Planet

Neues vom PostgreSQL Planet Feed abonnieren
Planet PostgreSQL
Aktualisiert: vor 2 Stunden 26 Minuten

Hans-Juergen Schoenig: How SQL/PGQ Rewrites to Joins on PostgreSQL 19

vor 14 Stunden 20 Minuten

This post is about what PostgreSQL actually does when you write GRAPH_TABLE syntax. It turns out the database rewrites your graph query into ordinary joins against the underlying tables, then plans them with the regular optimizer. This has three practical consequences you'll notice right away.

Christophe Pettus: All Your GUCs in a Row: escape_string_warning

vor 18 Stunden 21 Minuten
A twenty-year-old warning that stays silent on modern PostgreSQL—until it spots a real problem hiding in your connection settings.

Cornelia Biacsics: Contributions for week 26 & 27

13. Juli 2026 - 17:43

On 2 July, 2026, the PostgreSQL Istanbul Meetup met for the first time, organized by Devrim Gündüz, Gülçin Yıldırım Jelínek & Bilge Korkmaz Erdim.

Speakers:

  • Viktoriia Hrechukha
  • Pavlo Golub

On 2 July 2026, the PostgreSQL User Group Estonia met, organized by Ervin Weber

Speakers:

Jimmy Angelakos: PostgresEDI July 2026 Meetup — Public Speaking, AI Compliance

13. Juli 2026 - 14:37

Actual sunshine ☀️ in Edinburgh 😲 and a room full of Postgres people catching up over pizza: July was good to us. 🐘

Christophe Pettus: All Your GUCs in a Row: enable_tidscan

13. Juli 2026 - 3:00
TID scans only happen when you explicitly ask for them via `ctid`, making `enable_tidscan` a knob you'll almost certainly never touch.

Pavlo Golub: Swiss PgDay 2026 [UNLOGGED]

13. Juli 2026 - 2:00

We at CYBERTEC usually spend a lot of time producing polished community documentaries, but sometimes you just want to push the raw data straight to the output. Welcome to the UNLOGGED experiment for Swiss PgDay 2026!

Radim Marek: The tests passed. The plan didn't.

12. Juli 2026 - 20:16

TL;DR - RegreSQL 1.0 tested that your queries return the right rows. 2.0 tests that they return them the right way, and it does the checking against production's real statistics instead of your empty dev database, which lies.

A migration cleanup dropped an index nobody thought was load-bearing. Every test passed: same rows, same order, green. Three days later the API started timing out on a query that hadn't changed a character, because the planner had quietly switched it from an index scan to a sequential scan over a table that had kept growing.

Christophe Pettus: All Your GUCs in a Row: enable_sort

12. Juli 2026 - 3:00
Disable `enable_sort` to fix a slow sort? Wrong target. Slow sorts need more `work_mem` or better indexes—not this GUC.

Andrei Lepikhov: Postgres community events: isn't it time to tap the capabilities of the digital era?

12. Juli 2026 - 1:26

I've been going to conferences and meetups of all kinds since 2004. And today — much like in the era when a Nokia brick was giving people their first, still-primitive taste of mobility — these events follow the same format: you give a talk, you answer questions from the room, and the slides get posted somewhere. These days a video lands on YouTube too. Sometimes a chat survives the event, filled mostly with logistics. And that's about it.

Andrew Dunstan: (Belatedly) Announcing Release 21 of the PostgreSQL Buildfarm Client

11. Juli 2026 - 15:34
 This release was made 9 days ago, but I just realized that I neglected to make a blog post about it. So, for the record, here is the announcement that went out via email. I have released version 21 of the PostgreSQL Buildfarm Client New features
  • PatchStack module — a new module for non-standard buildfarms that want to
    test a stack of patches on top of a branch. Note: this module is not for use with the

Christophe Pettus: All Your GUCs in a Row: enable_seqscan

11. Juli 2026 - 3:00
enable_seqscan does not disable sequential scans. It cannot, and it was never meant to. The documentation says as much: sequential scans cannot be suppressed entirely, because sometimes reading the whole table is the only way to answer the query. What off actually does is tell the planner to avoi…

Dave Stokes: Ever Run Into A PostgreSQL Query That You Can Figure Out What It Does??

10. Juli 2026 - 22:06

 Ever have a query 'tossed over the fence' that you find incomprehensible but still have to support it? A few years ago, you would have needed to triage the query. Obfuscated queries can be tough to decipher.  Sometimes, the query is due to someone or an ORM being clever. Many times the query is touch to read because the 

DBeaver recently added its AI Chat to the free, open-source DBeaver Community Edition. And you will find it very at determining what a query does. Let's start with a simple query.

Hans-Juergen Schoenig: Architecture behind pg_hardstorage: The replication protocol

10. Juli 2026 - 7:00

If you've heard one thing about pg_hardstorage, it's probably that "it works against managed PostgreSQL". This post is about the one architectural choice that makes that true, and the consequences that fall out of it.

Christophe Pettus: All Your GUCs in a Row: enable_self_join_elimination

10. Juli 2026 - 3:00
You are rarely the only thing writing your SQL. Your ORM writes some of it, your nested views write more, and sooner or later one of them joins a table to itself on its own primary key. That join returns exactly the rows it started with. enable_self_join_elimination is the PostgreSQL 18 optimizat…

Christophe Pettus: The Version Number Is Not the Territory

9. Juli 2026 - 22:00
A PostgreSQL 14 database threw an error that PostgreSQL 14 cannot produce.

Vibhor Kumar: PostgreSQL, AI Governance, and the C.A.L.M. Platform Test

9. Juli 2026 - 18:40

A few months ago, I spent time with multiple teams inside the same large financial services organization.

I spoke with the data engineering team. The AI and model team. The platform team. The governance and compliance team.

Each conversation sounded right.

That was the problem.

Hubert 'depesz' Lubaczewski: Waiting for PostgreSQL 20 – Add min() and max() aggregate support for uuid.

9. Juli 2026 - 14:41
On 1st of July 2026, Masahiko Sawada committed patch: Add min() and max() aggregate support for uuid.   The uuid type already has a full set of comparison operators and a btree operator class, so it is totally ordered. min() and max() were the only common aggregates missing for it. Add the uuid_larger() and uuid_smaller() … Continue reading "Waiting for PostgreSQL 20 – Add min() and max() aggregate support for uuid."

Floor Drees: EDB heads to PGConf.Brasil 2026, this is what we’ll be talking about!

9. Juli 2026 - 10:39
The Brazilian PostgreSQL community is gearing up for one of the most anticipated events of the year: PGConf.Brasil 2026. Taking place in the city of Blumenau from September 2 - 4, this year’s conference features no less than 13 sessions by EDB colleagues.

Christophe Pettus: All Your GUCs in a Row: enable_presorted_aggregate

9. Juli 2026 - 3:00
enable_presorted_aggregate is on, it has been on since PostgreSQL 16 introduced it, and the single most useful thing you will ever do with it is turn it off for exactly one query. Default on, context user: settable per session, per role, per database, or inline in a single transaction. That last …

Haki Benita: How to Achieve Pruning When Querying by Non-Partitioned Columns in PostgreSQL

8. Juli 2026 - 23:00

One of the most valuable things about partitioned tables is pruning - the database's ability to eliminate entire partitions based on a query predicate. Under conventional wisdom, pruning can only be achieved when querying by the partition key - this makes choosing the right key extremely difficult. However, if your data follows certain patterns, using some clever tricks you can achieve pruning even when filtering by non-partition key columns.

Seiten