2026-05-07

pgindent versus struct members and typedefs

## What's New: Release Coordination, Not Technical Substance The new messages are entirely about **commit choreography**, not new technical ground. The patch itself is unchanged in substance — only t...

raising errors from Xact leads to assertion failure

# Assertion Failure When Raising Errors from XACT_EVENT_PREPARE Callback ## Core Problem The reporter (Kirill Reshke, working on a sharding extension for PostgreSQL — pg-sharding) is building a two-...

Available disk space per tablespace

## New review from Zsolt Parragi (Percona) — v5 code review A new reviewer, Zsolt Parragi (Percona), posted a detailed code-level review of v5. This is the first substantive review feedback from some...

create table like including storage parameter

## New in this round: Henson Choi's line-by-line review A single new message from Henson Choi (assam258@gmail.com) — the same reviewer who earlier delivered the 96.8% coverage report. This round is a...

Fix mismatched deallocation functions

## Core Problem: Allocator/Deallocator Mismatches in Frontend Code PostgreSQL's frontend utility code (`src/fe_utils`, `src/bin`, libpq, etc.) exposes two parallel families of memory management wrapp...

Remove inner joins based on foreign keys

### New: Tender Wang raises an ordering/iteration issue in `remove_useless_joins()` Tender Wang follows up on his own earlier review with a distinct, previously-unmentioned observation: inner-join re...

occasional ECPG failures on dikkop (FreeBSD)

## Overview This thread is a short buildfarm diagnostic exchange concerning intermittent (~5% rate) segmentation faults in ECPG's threaded regression tests on the `dikkop` FreeBSD animal. The failure...

Make printtup a bit faster

## What's New in This Round Three messages, and one of them is technically substantive: **Andres posted a rough prototype** demonstrating his fcinfo-context approach concretely, ending the abstract d...

2026-05-06

support create index on virtual generated column.

## Core Problem PostgreSQL 18 introduced **virtual generated columns** (commit 83ea6c5), where the column's value is computed on read rather than stored. This provides a "free" schema refactoring pri...

race condition when writing pg_control

## Core Problem: Two Distinct Race Conditions on pg_control This thread starts as a narrowly scoped bug report but evolves, over six years, into a much deeper architectural discussion about how Postg...

on_error table, saving error info to a table

# Technical Analysis: `ON_ERROR table` — Saving COPY FROM Errors to a Table ## Background and Motivation PostgreSQL 17 introduced the `ON_ERROR ignore` option for `COPY FROM`, allowing rows that fai...

ri_LockPKTuple misleading message

## Summary This thread is a small but illustrative bug-fix discussion concerning a **misleading error message** emitted by PostgreSQL's referential-integrity machinery (`ri_LockPKTuple`) and the row-...

Implement waiting for wal lsn replay: reloaded

# WAIT FOR LSN: Built-in Read-Your-Writes Consistency for Standbys ## The Core Problem PostgreSQL's streaming replication provides eventual consistency on standbys, but applications needing **read-y...

Having problems generating a code coverage report

## Overview This thread is not about a PostgreSQL code defect per se — it documents a long-running, collective struggle to keep PostgreSQL's **code coverage reporting pipeline** (`make coverage-html`...

Remove inner joins based on foreign keys

## Inner Join Removal via Foreign Keys — Architectural Analysis ### The Core Problem PostgreSQL's planner has long supported *left* join removal: if the RHS of a LEFT JOIN is guaranteed to match at ...

First draft of PG 19 release notes

## Thread Overview This thread nominally concerns Bruce Momjian's first draft of the PostgreSQL 19 release notes (212 feature entries, versus a recent average of 200), but it quickly bifurcates into ...

Add pg_stat_vfdcache view for VFD cache statistics

## Overview This thread proposes adding observability into PostgreSQL's Virtual File Descriptor (VFD) cache — a per-backend LRU-managed cache of open OS file descriptors bounded by `max_files_per_pro...

CREATE OR REPLACE MATERIALIZED VIEW

# CREATE OR REPLACE MATERIALIZED VIEW — Technical Analysis ## Core Problem Materialized views in PostgreSQL occupy an awkward middle ground in the object taxonomy: they carry a query definition like...

pg_rewind does not rewind diverging timelines

# pg_rewind and Diverging Timelines with Identical TLI Numbers ## The Core Problem PostgreSQL's timeline identifier (TLI) is a monotonically increasing integer that gets bumped every time a standby ...

Refactor code around GUC default_toast_compression

# Refactoring the TOAST Compression Method Registry ## Architectural Context PostgreSQL's TOAST (The Oversized-Attribute Storage Technique) subsystem supports pluggable-but-fixed compression methods...

Streaming replication and WAL archive interactions

## Core Problem: Coordinating WAL Archiving Across Primary and Standbys ### Architectural Context PostgreSQL's WAL archiving (`archive_mode`/`archive_command`) and streaming replication were designe...

Streaming replication and WAL archive interactions

# Streaming Replication and WAL Archive Interactions: The Shared Archive Mode Revival ## Core Problem: WAL Archival Gaps in HA Clusters In PostgreSQL HA deployments, there is a well-known race betwe...

Adding pg_dump flag for parallel export to pipes

## Core Problem `pg_dump`'s text format composes trivially with Unix pipelines (`pg_dump ... | lz4 | pv | ssh ...`), but the directory format (`-Fd`)—the only format that supports **parallel** dump/r...

StringInfo fixes, v19 edition. Plus a few oddities

# StringInfo fixes, v19 edition. Plus a few oddities — Technical Analysis ## Core Problem This thread addresses two intertwined concerns that recur each PostgreSQL development cycle: 1. **Misuse of...

Add 64-bit XIDs into PostgreSQL 15

# Deep Technical Analysis: 64-bit XIDs in PostgreSQL ## The Architectural Problem PostgreSQL's 32-bit TransactionId imposes a hard ceiling on transaction throughput: once ~2 billion XIDs have been c...

Support EXCEPT for ALL SEQUENCES publications

# Support EXCEPT for ALL SEQUENCES / TABLES IN SCHEMA Publications ## Architectural Context PostgreSQL's logical replication publication model historically offered two granularities: 1. Explicit obj...

Make printtup a bit faster

# Making `printtup` Faster: Rethinking the Type Output Function API ## Core Problem `printtup` — the `DestReceiver` callback used to format tuples for the wire protocol in text mode — shows up promi...

FOR PORTION OF vs. object_aclcheck

# FOR PORTION OF vs. object_aclcheck — Analysis ## Context and Architectural Background `FOR PORTION OF` is the SQL:2011 temporal-update feature that allows `UPDATE`/`DELETE` to affect only a sub-ra...

Type of property graph

## Core Problem PostgreSQL's SQL/PGQ (Property Graph Queries) feature, under development by Peter Eisentraut, introduces a new schema object: the **property graph**. A property graph is a catalog-lev...

problems with toast.* reloptions

## Core Problem: The `toast.*` Reloptions Are Fundamentally Broken PostgreSQL has long supported `toast.*` reloptions (e.g., `toast.vacuum_truncate`, `toast.autovacuum_vacuum_threshold`) that allow i...

EXPLAIN: showing ReadStream / prefetch stats

# EXPLAIN: Exposing ReadStream / Prefetch Statistics ## Problem Statement The ReadStream API (introduced in PG17) centralizes asynchronous buffer prefetching for sequential-like access patterns. It ...

off-by-one in pg_repack index loop

## Core Problem This thread identifies a classic **off-by-one boundary check bug** in code that validates an index against a list length before calling `list_nth_oid()`. The thread title mentions "pg...

Serverside SNI support in libpq

# Server-side SNI Support in libpq: Deep Technical Analysis ## The Core Problem PostgreSQL's TLS implementation has historically supported a single server certificate/key pair, configured via `ssl_c...

Pgbench: remove synchronous prepare

# Pgbench: Remove Synchronous Prepare — Technical Analysis ## The Core Problem `pgbench` with `--protocol=prepared` has a latent bug that surfaces when used behind a connection pooler (e.g., PgBounc...

Row pattern recognition

# Row Pattern Recognition (SQL/RPR) Implementation ## Overview This thread, spanning from June 2023 to May 2026, documents the design and implementation of SQL:2016's Row Pattern Recognition (RPR) f...

Wrong results in remove_useless_groupby_columns()

# Wrong Results in `remove_useless_groupby_columns()` — Collation and Opfamily Mismatches ## Core Problem `remove_useless_groupby_columns()` is a planner optimization in `src/backend/optimizer/plan/...

Use-after-free issue in postgres_fdw

# Use-after-free in postgres_fdw: Premature PGconn Disposal During Subtransaction Abort ## The Core Problem This thread addresses a concrete use-after-free bug in `postgres_fdw` that produces a back...

create table like including storage parameter

# CREATE TABLE LIKE: INCLUDING PARAMETERS and INCLUDING TRIGGERS ## Core Problem `CREATE TABLE ... (LIKE source_table INCLUDING ...)` is PostgreSQL's mechanism for cloning a table's definitional att...

vectorized CRC on ARM64

# Vectorized CRC on ARM64: Bringing PMULL-Based CRC32C to AArch64 ## Core Problem and Architectural Context PostgreSQL uses CRC32C pervasively — every WAL record is protected by a CRC, as are contro...

Avoid calling SetMatViewPopulatedState if possible

## Overview This is a small, focused optimization patch for `REFRESH MATERIALIZED VIEW` that targets an unnecessary catalog update performed on every refresh. The thread is short (three messages) but...

Adding REPACK [concurrently]

# REPACK [CONCURRENTLY]: Architectural Analysis ## Core Problem PostgreSQL has long lacked an in-core facility for **concurrent table rewriting**. The existing tools have significant deficiencies: ...

Support logical replication of DDLs

# Logical Replication of DDLs: A Multi-Year Design Struggle ## The Core Problem PostgreSQL's logical replication, since its introduction in 10, has replicated only DML (INSERT/UPDATE/DELETE/TRUNCATE...

remove pg_spin_delay() from atomics code

## Overview This is a small, targeted cleanup patch proposed by Nathan Bossart (a PostgreSQL committer) against the atomics subsystem header `src/include/port/atomics/arch-x86.h`. The thread (as pres...

Available disk space per tablespace

# Available disk space per tablespace — Technical Analysis ## Core Problem PostgreSQL exposes `pg_tablespace_size()` (how much a tablespace currently consumes) but has no first-class way to answer t...

small cleanup for s_lock.h

# Cleanup of `s_lock.h`: API Contract Clarification for Spinlocks ## Context and Motivation `src/include/storage/s_lock.h` is one of the oldest and most platform-sensitive headers in the PostgreSQL ...

Prepping for annual pgindent run

# Annual pgindent Run: Tooling Hygiene and Formatting Improvements ## Context and Purpose PostgreSQL maintains strict code formatting conventions enforced via `pgindent`, a customized wrapper around...

pgindent versus struct members and typedefs

# pgindent versus struct members and typedefs ## Core Problem `pgindent` — PostgreSQL's tree-wide C formatter, forked long ago from BSD `indent` — has a long-standing class of bugs related to how it...

Parallel Apply

# Parallel Apply for Non-Streaming Transactions: Deep Technical Analysis ## 1. The Core Architectural Problem Logical replication's apply pipeline has a fundamental scalability asymmetry with the pu...

Function scan FDW pushdown

# Function Scan FDW Pushdown — Technical Analysis ## Context and Core Problem This thread concerns a long-running patch series by Alexander Pyhalov (Postgres Pro) to extend postgres_fdw — and the FD...

[PATCH] Clean up property graph error messages

## Overview This thread is a small, narrowly-scoped cleanup patch against `src/backend/commands/propgraphcmds.c`, the command-layer implementation of SQL/PGQ property graphs (a feature added for Post...