2026-06-04

Improve errmsg for publication membership

# Technical Analysis: Improve errmsg for Publication Membership ## Core Problem This is a minor grammatical consistency fix in PostgreSQL's error message infrastructure. Two error messages in the l...

Add per-backend lock statistics

# Add Per-Backend Lock Statistics: Technical Analysis ## Core Problem PostgreSQL 17 introduced global lock statistics via commit `4019f725f5d`, exposed through the `pg_stat_lock` view. This provides...

deep copy with mutation?

# Deep Technical Analysis: Deep Copy with Mutation in PostgreSQL Tree Walkers ## Core Problem PostgreSQL's query processing pipeline frequently needs to create modified copies of expression trees (...

Avoid orphaned objects dependencies, take 3

## Incremental Update: TOCTOU Patch v2 Arrives, Jeff Davis Raises Spurious Error Concern ### New Development: Bertrand's TOCTOU Protection Patch (0002 replacement) With patch 0001 committed and back...

BackgroundPsql swallowing errors on windows

# BackgroundPsql Swallowing Errors on Windows: Deep Technical Analysis ## Core Problem The PostgreSQL TAP testing infrastructure relies on `BackgroundPsql.pm` to maintain long-running `psql` sessio...

Row pattern recognition

## New in this round: varId encoding decision settled, Jian's executor questions answered, empty-pattern rationale documented ### 1. varId Encoding: Option (3) Chosen — Reserve 16 Control Codes at 0x...

CREATE TABLE LIKE INCLUDING PRIVILEGES

# CREATE TABLE LIKE INCLUDING PRIVILEGES — Technical Analysis ## Core Problem The `CREATE TABLE ... LIKE` statement in PostgreSQL allows copying a table's structure (columns, constraints, indexes, ...

Vacuumlo improvements

# Vacuumlo Improvements — May 2026 Summary ## Overview A critical correctness bug was identified in `vacuumlo`: the tool silently skips columns typed as domains over `oid` or `lo`, causing it to inc...

Init connection time grows quadratically

# Init Connection Time Grows Quadratically: Technical Analysis ## Core Problem The thread investigates a surprising performance characteristic: PostgreSQL's initial connection time (ICT) — the time ...

RFC: Allow EXPLAIN to Output Page Fault Information

## Incremental Update: 2026-06-01 ### Author Response to Review and Viability Concerns Atsushi Torikoshi responded to both the commitfest review bug report (from Ilmar Yunusov) and the strategic via...

PostgreSQL 19 Beta 1 release announcement draft

## Incremental Update: PostgreSQL 19 Beta 1 Announcement Draft (Round 2) ### Summary of New Developments The thread progressed with several new feature inclusion requests, a terminology correction, ...

Eager aggregation, take 3

## Incremental Update: Semi/Anti Join Bug Fix Committed The semi/anti join bug identified in the prior analysis has now been resolved and committed. ### The Fix Richard Guo's fix is surgically targ...

Centralised architecture detection

# Centralised Architecture Detection in PostgreSQL ## The Core Problem PostgreSQL's codebase relies on compiler-defined preprocessor macros to detect CPU architecture and conditionally compile archi...

Interest in Faster Unicode Normalization

# Interest in Faster Unicode Normalization ## Technical Problem Unicode normalization is a fundamental operation in PostgreSQL's text processing pipeline. It is required for: 1. **Collation correc...

A few message wording/formatting cleanup patches

## Incremental Update: Review Progress on Patch 0001 (Property Graph Object Descriptions) The only substantive activity since the last analysis concerns **Patch 0001** (making property graph object d...

problems with toast.* reloptions

# Monthly Summary: Problems with toast.* reloptions (May 2026) ## Overview This thread reached a critical juncture in May 2026, with Nathan Bossart's investigation revealing that `toast.*` reloption...

Allow table AMs to define their own reloptions

# Allow Table AMs to Define Their Own Reloptions ## Core Problem PostgreSQL's Table Access Method (TAM) API, introduced in PostgreSQL 12, allows custom storage engines to be plugged in as alternativ...

Does MSVC predefine __x86_64__ on 64-bit Intel?

# Technical Analysis: MSVC Predefined Architecture Macros and __x86_64__ ## Core Problem Tom Lane identified a latent portability and correctness issue in PostgreSQL's preprocessor-based architectur...

create table like including storage parameter

## New in this round: Lakshmi Krishnamurthy responds to Zsolt's review with design clarification ### Author's response (2026-06-04) Lakshmi (jian.universality@gmail.com) responds to Zsolt Parragi's ...

[PATCH] Fix overflow and underflow in regr_r2()

## Incremental Update: Both Patches Committed Dean Rasheed confirms both patches (regr_r2 and regr_intercept overflow/underflow fixes) have been pushed to HEAD on 2026-06-03. No further technical dis...

Heads Up: cirrus-ci is shutting down June 1st

## Incremental Update: v7a-v8 Patches, Test Performance Analysis, and Fork Security Resolution ### Major Technical Progress #### Andres's Large Incremental Patch (v7a series, June 1) Andres posted...

Make printtup a bit faster

# Monthly Summary: Make printtup a bit faster (May 2026) ## Overview After a two-year hiatus (2024–2026), this thread reached design consensus in May 2026. The long-standing debate over how to elimi...

Add pg_stat_kind_info system view

## Incremental Update: Paquier Concedes on Callbacks, Refines `shared_size` Semantics Michael Paquier responds with a concession on the callback columns and a new technical suggestion about `shared_s...

Commit Sequence Numbers and Visibility

# Commit Sequence Numbers and Visibility: Deep Technical Analysis ## Core Problem PostgreSQL's current snapshot mechanism is built on the **procarray** — a shared-memory structure listing all active...

[PATCH] Add NESTED_STATEMENTS option to EXPLAIN

## Incremental Analysis: v5 Patch Addressing All Review Feedback ### Summary Mohamed Ali responded to all five of Zsolt Parragi's review objections with a comprehensive v5 patch that fixes both logi...

Support EXCEPT for ALL SEQUENCES publications

## Round Update: Peter Smith Reviews v8 Patches; Nisha Posts v9; Zsolt Parragi Finds Two Bugs in Schema EXCEPT Validation ### Key Technical Activity This round contains Peter Smith's review of Nisha...

Multi-Entry Indexing for GiST & SP-GiST

## Incremental Analysis: Memory Boundedness Concern for TID Deduplication Two new participants engage with the patch, with Matthias van de Meent raising a fundamental correctness/resource concern abo...

generic plans and "initial" pruning

## Incremental Update: v13 Review and DML Limitation Discovered ### New External Review (Ilmar Yunusov) A new reviewer tested v13 of the patch series (based on Amit's 2026-05-29 posting) and provide...

Add pg_get_publication_ddl function

# Monthly Summary: Add pg_get_publication_ddl Function — May 2026 ## Overview This thread progressed significantly in May 2026, moving from an initial v1 patch with multiple bugs to a substantially ...

Add RISC-V Zbb popcount optimization

## Incremental Analysis: Clang Bug Root Cause Confirmed and Version Bounds Established ### Key Development: Minimal Reproducer and Definitive Version Pinning Greg has made significant progress on th...

Non-superuser subscription owners

## Incremental Update: Provenances Discussion Continues (June 1, 2026) The new messages continue the theoretical discussion around Robert Haas's "provenances" proposal from the prior analysis. The co...

pg_rewind does not rewind diverging timelines

## New Developments Since Last Analysis ### New Reviewer Challenge: History-Based Matching as Alternative Kyotaro Horiguchi raised a design-level question: could the existing timeline history inform...

hashjoins vs. Bloom filters (yet again)

## Incremental Update: v2 Patch Series (Hash Join-Local Bloom Filters) and Architectural Discussion ### Major Development: v2 Patch Series — Bloom Filters Within Hash Join Scope Tomas Vondra posted ...

Key joins

No substantive technical progress.

Improve pg_stat_statements scalability

## Incremental Update: Review of v3-0001 (In-Transaction Flush) — Architectural Debate on pgstat Flush Design ### What's New The discussion has shifted focus to the **foundational patch 0001** (`pg_...

Race conditions in logical decoding

# Race Conditions in Logical Decoding: CLOG vs Snapshot Consistency ## The Core Problem This thread exposes a fundamental race condition in PostgreSQL's logical decoding infrastructure that can caus...

(SQL/PGQ) cache lookup failed for label

# Monthly Summary: (SQL/PGQ) cache lookup failed for label — May 2026 ## Overview A dependency-tracking bug in PostgreSQL's SQL/PGQ (Property Graph Queries) implementation was reported, diagnosed, p...

future of PQfn()

## Incremental Update: New Patch Set Reordering Strategy ### Key Development Nathan posted a new patch set (2026-06-03) that reflects a strategic reordering of the work: 1. **0001**: Removes PQfn()...

2026-06-01

pg_rewind does not rewind diverging timelines

# pg_rewind Does Not Rewind Diverging Timelines — May 2026 Summary ## Problem Statement Mats Kindahl discovered (via TLA+/TLC model checking) that PostgreSQL's timeline identifier (TLI) system can s...

future of PQfn()

## Incremental Update: Concrete Benchmarks, WIP Patches, and Protocol Design Discussion ### Key Developments 1. **Nathan posted concrete benchmark results at 1M scale** comparing Jelte's `CreateOne...

Multi-Entry Indexing for GiST & SP-GiST

## Incremental Analysis: Andrey Borodin's Architectural Review Andrey Borodin provides the first substantive review of the GiST-side architecture, raising three distinct technical concerns and broade...

s/pg_attribute_always_inline/pg_always_inline/?

# Technical Analysis: Renaming `pg_attribute_always_inline` to a Shorter Form ## Core Problem The macro `pg_attribute_always_inline` — used to force the compiler to inline a function regardless of ...

[PATCH] pg_stat_lock: add blocker mode dimension

# Technical Analysis: pg_stat_lock Blocker Mode Dimension ## Core Problem PostgreSQL's `pg_stat_lock` view (introduced in recent versions to provide cumulative lock wait statistics) currently aggre...

RFC: Allow EXPLAIN to Output Page Fault Information

# Monthly Summary: RFC: Allow EXPLAIN to Output Page Fault / Storage I/O Information — May 2026 ## Overview This month saw the discussion mature from technical refinement into a serious viability de...

tablecmds: clarify recurse vs recusing

# Technical Analysis: tablecmds.c `recurse` vs `recursing` Parameter Naming Clarity ## Core Problem PostgreSQL's `tablecmds.c` is one of the largest and most complex files in the codebase, implemen...

Incremental View Maintenance, take 2

# Incremental View Maintenance (IVM) for PostgreSQL — Deep Technical Analysis ## The Core Problem Materialized views in PostgreSQL are static snapshots: they must be fully recomputed via `REFRESH MA...

PostgreSQL and OpenSSL 4.0.0

# PostgreSQL and OpenSSL 4.0.0 — May 2026 Summary ## Overview OpenSSL 4.0.0 (GA April 2026) introduced return-value constification on APIs used by PostgreSQL's TLS layer (`libpq`, `contrib/sslinfo`)...

Fix safe_wal_size for slots without restart_lsn

# Fix safe_wal_size for Slots Without restart_lsn ## Core Problem The `pg_replication_slots` system view exposes a `safe_wal_size` column that indicates how much WAL can be written before a replica...

postgres_fdw: Use COPY to speed up batch inserts

## Incremental Update: v13 Patchset — Switch Back to TEXT Format with Refactored Escaping ### Key Change: CSV → TEXT format reversal, with code deduplication Matheus posted a new patchset (v13) that...

First draft of PG 19 release notes

# Analysis: First Draft of PG 19 Release Notes — Role/Function Miscategorization Fix ## Core Problem The PostgreSQL 19 release notes contained an inaccuracy in describing a security/privilege enhan...

Support EXCEPT for ALL SEQUENCES publications

# Monthly Summary: Support EXCEPT for ALL SEQUENCES / TABLES IN SCHEMA Publications — May 2026 ## Overview This thread tracks two parallel extensions to PostgreSQL's logical replication publication ...

Add pg_stat_kind_info system view

## Incremental Update: Tristan Partin's Response to Paquier's Review Tristan Partin responds to Michael Paquier's review, agreeing with some suggestions while pushing back on others. ### Key Decisio...

ci: Skip minfree file in the cores_backtrace.sh

# CI: Skip minfree file in cores_backtrace.sh ## The Core Problem PostgreSQL's CI infrastructure uses a script (`src/tools/ci/cores_backtrace.sh`) that iterates over files in a core dump directory ...

Adding REPACK [concurrently]

# REPACK [CONCURRENTLY] — May 2026 Monthly Summary ## Overview May 2026 was dominated by the **decision to revert db-specific snapshots** from PG19, while the core REPACK CONCURRENTLY feature remain...

on_error table, saving error info to a table

# Monthly Summary: `ON_ERROR TABLE` — Saving COPY FROM Errors to a Table (May 2026) ## Overview May 2026 saw the most active development period for this long-running patch (originally proposed Feb 2...

[PATCH] Fix typos in pqsignal.c comment

# Technical Analysis: Fix typos in pqsignal.c comment ## Overview This is a minimal, comment-only patch that corrects two typographical errors in `src/port/pqsignal.c`. The patch has no functional ...

create table like including storage parameter

# CREATE TABLE LIKE: INCLUDING PARAMETERS and INCLUDING TRIGGERS — May 2026 Summary ## Overview This thread advances two patches extending `CREATE TABLE ... (LIKE source INCLUDING ...)` to cover two...

Key joins

# Key Joins: A New SQL Language Feature for PostgreSQL ## Core Problem The fundamental problem addressed by this proposal is that SQL's JOIN syntax is semantically overloaded — a JOIN can serve thr...

Bound memory usage during manual slot sync retries

# Bound Memory Usage During Manual Slot Sync Retries — May 2026 Summary ## Problem & Resolution The `pg_sync_replication_slots()` SQL function had an unbounded memory growth problem during its inter...

Avoid calling SetMatViewPopulatedState if possible

# Monthly Summary: Avoid calling SetMatViewPopulatedState if possible (May 2026) ## Overview A focused optimization patch to eliminate unnecessary `pg_class` catalog updates during `REFRESH MATERIAL...

Improve pg_stat_statements scalability

# Monthly Summary: Improve pg_stat_statements Scalability — May 2026 ## Overview May 2026 saw the pg_stat_statements scalability patch evolve from initial proposal through architectural refinement, ...

uuidv7 improperly accepts dates before 1970-01-01

# Technical Analysis: uuidv7() Interval Shift Boundary Validation ## Core Problem The `uuidv7(interval)` function in PostgreSQL accepts arbitrary interval offsets to shift the timestamp embedded in ...

Heads Up: cirrus-ci is shutting down June 1st

# Monthly Summary: Cirrus CI Shutdown and PostgreSQL CI Infrastructure Migration (May 2026) ## Overview With Cirrus CI's June 1, 2026 shutdown deadline looming, the PostgreSQL community moved from d...

log_postmaster_stats

# Technical Analysis: `log_postmaster_stats` — Periodic Postmaster Activity Reporting ## Core Problem The PostgreSQL postmaster process — the central coordinator responsible for forking new backend ...

Avoid orphaned objects dependencies, take 3

# Monthly Summary: Avoid Orphaned Object Dependencies, Take 3 — May 2026 ## Overview This month saw significant progress toward landing the patch that prevents orphaned object dependencies in Postgr...

code contributions for 2024, WIP version

# Analysis: Code Contributions Metrics for PostgreSQL — Methodology, Automation, and Identity Resolution ## Core Problem This thread spans two years (2024-2025) of Robert Haas's annual effort to qu...

Parallel INSERT SELECT take 2

# Parallel INSERT SELECT take 2 — May 2026 Monthly Summary ## Overview After five years of dormancy, this thread was revived by Tomas Vondra with a fundamental reassessment of the approach taken by ...

CREATE INDEX CONCURRENTLY on partitioned index

# CREATE INDEX CONCURRENTLY on Partitioned Tables: Deep Technical Analysis ## The Core Problem PostgreSQL's `CREATE INDEX CONCURRENTLY` (CIC) has never supported partitioned tables. When a user issu...

Dump statistic issue with index on expressions

# Dump Statistic Issue with Index on Expressions — May 2026 Summary ## Overview A reported bug in `pg_dump --statistics-only` (new in PostgreSQL 18) involving cross-index attribute name leakage was ...

generic plans and "initial" pruning

# Deep Technical Analysis: Generic Plans and "Initial" Pruning ## The Core Problem When PostgreSQL executes prepared statements against partitioned tables using **generic plans**, performance degra...

[PATCH] Add NESTED_STATEMENTS option to EXPLAIN

# Monthly Summary: Add NESTED_STATEMENTS Option to EXPLAIN (May 2026) ## Overview This thread saw rapid iteration from v1 through v4 of a patch adding `NESTED_STATEMENTS` as a new EXPLAIN option, tr...

[PATCH] Fix overflow and underflow in regr_r2()

# Monthly Summary: Fix Overflow and Underflow in regr_r2() (and regr_intercept()) ## Overview This thread addresses numerical instability in PostgreSQL's `regr_r2()` and `regr_intercept()` aggregate...

Add XMLNamespaces to XMLElement

# Add XMLNamespaces to XMLElement - Technical Analysis ## Core Problem PostgreSQL's `xmlelement()` function, which constructs XML elements per the SQL/XML standard, lacks support for the `XMLNAMESP...

Non-superuser subscription owners

# Non-superuser Subscription Owners: Deep Technical Analysis ## Core Problem PostgreSQL's logical replication system was designed with the assumption that subscriptions would always be owned and ope...

PostgreSQL 19 Beta 1 release announcement draft

# PostgreSQL 19 Beta 1 Release Announcement Draft Review ## Overview This thread concerns the community review of the PostgreSQL 19 Beta 1 release announcement draft, a standard part of the PostgreS...

Set notice receiver before libpq connection startup

# Set Notice Receiver Before libpq Connection Startup — May 2026 Summary ## Problem PostgreSQL's `libpqsrv` infrastructure (used by dblink, postgres_fdw, and other extensions for outbound libpq conn...

Add RISC-V Zbb popcount optimization

# Technical Analysis: RISC-V Zbb Popcount Optimization and Clang Auto-Vectorization Bug ## Core Problem This thread encompasses two distinct but related problems for PostgreSQL on RISC-V: 1. **Perf...

A few message wording/formatting cleanup patches

# Technical Analysis: Message Wording/Formatting Cleanup Patches ## Core Problem This thread addresses a collection of internationalization (i18n), style consistency, and naming issues discovered du...

Fix mismatched deallocation functions

# Monthly Summary: Fix Mismatched Deallocation Functions (May 2026) ## Overview Tristan Partin proposed a mechanical refactor to fix allocator/deallocator mismatches in PostgreSQL's frontend code, u...

Eager aggregation, take 3

# Eager Aggregation in PostgreSQL: Deep Technical Analysis ## Core Problem Eager aggregation is a query optimization technique that partially pushes a GROUP BY aggregation past a join operation, per...

Pgbench: remove synchronous prepare

## Incremental Update: Robert Haas Pushes Back on Need for New libpq Entrypoint Robert Haas returns after pgconf.dev and directly challenges the fundamental premise of the patch — that a new libpq fu...

index prefetching

# Index Prefetching for PostgreSQL: Deep Technical Analysis ## The Core Problem PostgreSQL's index scan execution model has a fundamental I/O inefficiency: when performing a regular index scan (btr...

Beautify read stream "per buffer data" APIs

# Beautify Read Stream "Per Buffer Data" APIs ## Core Problem PostgreSQL's read stream infrastructure (introduced to support prefetching and efficient sequential/random I/O patterns) exposes a "per...

Uninitialized memory access in zic

# Uninitialized Memory Access in zic ## Core Problem PostgreSQL's `zic` (timezone compiler) utility, which is used during the build process to compile timezone data files into binary format, contai...

hashjoins vs. Bloom filters (yet again)

# Bloom Filter Pushdown for Hash Joins: Deep Technical Analysis ## Core Problem Hash joins in PostgreSQL process outer tuples by probing the hash table for each one. When a join is highly selective...

[oauth] Bug: when is shutdown_cb called?

# Technical Analysis: OAuth `shutdown_cb` Documentation Bug ## Core Problem The OAuth validator module API in PostgreSQL 18 includes a `shutdown_cb` callback that implementations can register. Howe...

Update our timezone code to IANA tzcode2026b

# Technical Analysis: Update our timezone code to IANA tzcode2026b ## Core Problem PostgreSQL maintains a vendored copy of the IANA timezone library (tzcode) within its source tree, used to handle t...

2026-05-27

[PATCH] Two small errhint cleanups in PG19 code

# Technical Analysis: Two Small errhint Cleanups in PG19 Code ## Core Problem This thread addresses two minor but important message quality issues in PostgreSQL 19's error hint (errhint) strings — ...

[PATCH] Little refactoring of portalcmds.c

# Technical Analysis: [PATCH] Little refactoring of portalcmds.c ## Core Problem The patch addresses code duplication in `src/backend/commands/portalcmds.c`, specifically around cursor name validat...

POC: PLpgSQL FOREACH IN JSON ARRAY

# Technical Analysis: PLpgSQL FOREACH IN JSON ARRAY ## Core Problem PL/pgSQL currently lacks a native iteration construct for JSON arrays. Developers who need to iterate over JSON array elements mus...

future of PQfn()

# Future of PQfn(): Retiring PostgreSQL's Fast-Path Function Call Interface ## Core Problem PQfn() is PostgreSQL's "fast path" interface in libpq, which allows clients to invoke server-side functio...

Support loser tree for k-way merge

# Support Loser Tree for K-Way Merge in PostgreSQL ## Core Problem PostgreSQL's external sort implementation uses a binary heap (priority queue) to perform k-way merging of sorted runs during `tupl...

Remove inner joins based on foreign keys

## Richard Guo's PGConf.dev Synthesis and Formal Options Enumeration (v5) Richard returns from PGConf.dev with a significant message that restructures the entire discussion. Rather than defending the...

[PoC] Add CANONICAL option to xmlserialize

# Technical Analysis: Adding XML Canonicalization to PostgreSQL ## Core Problem XML documents can have multiple valid physical representations that are semantically equivalent. For example, `

remove autoanalyze corner case

# Technical Analysis: Removing Autoanalyze Corner Case in Anti-Wraparound Vacuum ## The Core Problem PostgreSQL's autovacuum system has a subtle and likely unintentional behavioral corner case rela...

expand refint docs with usage info

# Technical Analysis: Expanding refint Documentation with Usage Info ## Core Problem The `refint` contrib module (which provides referential integrity checking via triggers) has been the subject of ...

libpq maligning postgres stability

# Technical Analysis: libpq Misleading "Server Crash" Error Messages ## Core Problem libpq, PostgreSQL's client library, contains a long-standing error message pattern that misleads users about the ...

Rename Postgres 19 to Postgres 26 (year-based)?

## Incremental Update: Proposer Pivots to Lightweight Alternatives The most significant development is that **Nikolay Samokhvalov has explicitly conceded** the year-based versioning proposal and pivo...

Small fixes for CHECKPOINT FLUSH_UNLOGGED

# Technical Analysis: Small fixes for CHECKPOINT FLUSH_UNLOGGED ## Context and Background This thread addresses two minor but important polish issues with the recently committed feature "Add FLUSH_U...

2026-05-25

splitting pg_resetwal output strings

# Splitting pg_resetwal Output Strings: Dynamic Column Alignment for Translatable Output ## Core Problem PostgreSQL's `pg_resetwal` (and similar tools like `pg_controldata`) produce tabular output ...

Rename Postgres 19 to Postgres 26 (year-based)?

## Incremental Update: Core Committer Opposition Emerges The most significant development since the initial analysis is that **two core committers** (Tom Lane and Peter Eisentraut) have now weighed i...

Removing broken support for OpenSSL without ECDH

# Removing Broken Support for OpenSSL without ECDH ## Technical Problem PostgreSQL's SSL/TLS implementation contains dead code paths guarded by the `OPENSSL_NO_ECDH` preprocessor macro, which was i...

Adding pg_dump flag for parallel export to pipes

## New External Tester Report — First Substantive Feedback in Months Solai (solai.cdac@gmail.com) provides the first external testing report since Mahendra's earlier reviews. The message confirms bas...

Incremental View Maintenance, take 2

# Incremental View Maintenance (IVM) for PostgreSQL — Deep Technical Analysis ## Core Problem Materialized views in PostgreSQL can only be refreshed via `REFRESH MATERIALIZED VIEW`, which recompute...

Fix pg_stat_wal_receiver to show CONNECTING status

## Incremental Update: Patches Committed + Post-Commit Review ### Resolution: Both Patches Applied Michael Paquier committed the v3 patch set on 2026-05-22: - **v3-0001** (the CONNECTING visibility...

Pg upgrade bug with NOT NULL NOT VALID

## Incremental Update: Continued Discussion on Fix Approach The thread has a brief exchange between Kirill Reshke and Álvaro Herrera clarifying positions on the solution approach, but no patches or s...

2026-05-22

COPY TO BLACKHOLE / pg_dump -j -Fb

# COPY TO BLACKHOLE / pg_dump -j -Fb ## Technical Analysis ### Core Problem This thread, initiated by Jakub Wartak (EDB), proposes the concept of a "COPY TO BLACKHOLE" facility — essentially a mec...

Implement waiting for wal lsn replay: reloaded

## Resolution of the `019_replslot_limit.pl` Race Condition The thread reaches consensus on fixing the replication slot state race exposed by the faster WAIT FOR LSN-based `wait_for_catchup()`. ### ...

Optimize LISTEN/NOTIFY

# Optimize LISTEN/NOTIFY: Deep Technical Analysis ## Core Problem PostgreSQL's LISTEN/NOTIFY mechanism suffers from a fundamental scalability bottleneck: **SignalBackends() has no knowledge of whic...

Rename Postgres 19 to Postgres 26 (year-based)?

# Rename Postgres 19 to Postgres 26 (Year-Based Versioning) ## Core Problem This thread proposes a fundamental change to PostgreSQL's versioning scheme: shifting from sequential integer major versi...

Pg upgrade bug with NOT NULL NOT VALID

# Pg_upgrade Bug with NOT NULL NOT VALID Constraints ## Core Problem This thread identifies a **pg_upgrade compatibility bug** introduced by PostgreSQL 18's treatment of NOT NULL constraints as fir...

Multi-Entry Indexing for GiST & SP-GiST

# Multi-Entry Indexing for GiST & SP-GiST: Deep Technical Analysis ## Core Problem PostgreSQL's GiST (Generalized Search Tree) and SP-GiST (Space-Partitioned GiST) access methods fundamentally assu...

Fix pg_stat_wal_receiver to show CONNECTING status

## Incremental Update: Resolution on v2 Approach + New Bug Discovery ### Convergence on v2 The debate about whether to show timestamp fields during CONNECTING state has resolved. Michael Paquier de...

[PATCH] Add reentrancy guards in ri_triggers.c

# Technical Analysis: Reentrancy Guards in ri_triggers.c ## The Core Problem This thread addresses a **use-after-free vulnerability** in PostgreSQL's referential integrity trigger system (`ri_trigg...

amcheck support for BRIN indexes

# amcheck Support for BRIN Indexes: Deep Technical Analysis ## Core Problem PostgreSQL's `amcheck` extension provides corruption-detection capabilities for B-tree indexes (and more recently GIN ind...

Graph database developer meeting at pgconf.dev 2026

# Graph Database Developer Meeting at pgconf.dev 2026: Technical Analysis ## Core Problem and Context With basic SQL/PGQ (Property Graph Queries) support committed to PostgreSQL 19, the community fa...

Function scan FDW pushdown

## New in this round: Pyhalov identifies architectural weakness in Korotkov's "no fpinfo on function rel" design — surfaces three concrete problems A single dense message from Pyhalov that challenges...

2026-05-20

Sequence Access Methods, round two

## Incremental Update: Independent Benchmark Validation by Lepihov ### Summary Lepihov (Andrei Lepikhov) followed up on his earlier suggestion about avoiding unnecessary cache lookups with independe...

relfilenode statistics

# Relfilenode Statistics: Deep Technical Analysis ## The Core Problem PostgreSQL's statistics subsystem (`pgstats`) currently keys relation-level statistics by the relation's OID. This creates a fu...

[PATCH] ternary reloption type

# Technical Analysis: Ternary Reloption Type Patch Review ## Core Problem PostgreSQL's relation options (reloptions) system historically supported boolean, integer, real, enum, and string types. Se...

Review observations for COPY ON_ERROR_TABLE patch

# Technical Analysis: Review Observations for COPY ON_ERROR_TABLE Patch ## Core Problem The COPY ON_ERROR_TABLE feature extends PostgreSQL's existing `COPY ... ON_ERROR` mechanism (introduced in Po...

Implement waiting for wal lsn replay: reloaded

## New Bug: `wait_for_catchup()` with WAIT FOR LSN Causes Race in Replication Slot State Tests Alexander Korotkov reports a **new class of test failure** caused by the WAIT FOR LSN-based `wait_for_ca...

Fix pg_stat_wal_receiver to show CONNECTING status

# Fix pg_stat_wal_receiver to Show CONNECTING Status ## Core Problem Commit `a36164e74` introduced a `WALRCV_CONNECTING` state to the WAL receiver subsystem, explicitly motivated by monitoring use ...

Support LIKE with nondeterministic collations

# Support LIKE with Nondeterministic Collations ## Core Problem PostgreSQL's nondeterministic collations (introduced by Peter Eisentraut) enable case-insensitive, accent-insensitive, and other Unic...

duckdb has extensible parser

## Incremental Update: New Participant Shares Concrete Implementation Work ### What's New Greg Burd has responded to Pavel Stehule's original post with a concrete (though incomplete) implementation ...

Function scan FDW pushdown

## New in this round: Korotkov posts v5 addressing all five Pyhalov bugs, then two rapid follow-up fixups for whole-row Var edge cases in DirectModify/outer-join paths This round shows the patch ente...

Fix typo 586/686 in atomics/arch-x86.h

## Patch Committed Daniel Gustafsson's single-word "Done." confirms the 32-bit atomics removal patch has been committed to HEAD. No new technical discussion, no new arguments, no new participants. Th...

[oauth] Fix minimal typo in OAuth

# Technical Analysis: Fix Minimal Typo in OAuth ## Core Problem This is a trivial cosmetic fix addressing a minor typo in PostgreSQL's OAuth authentication code — specifically a forgotten/missing q...

2026-05-18

Move FOR PORTION OF checks out of analysis

# Move FOR PORTION OF Checks Out of Analysis ## Core Problem The `FOR PORTION OF` feature (a temporal/period-based SQL construct being added in PostgreSQL 19) has validation checks that are current...

[PATCH] vacuumdb: Add --exclude-database option

# Technical Analysis: vacuumdb --exclude-database Option ## Core Problem The `vacuumdb --all` command in PostgreSQL's client utilities vacuums every connectable database on a cluster without except...

Fix small issues of pg_restore_extended_stats()

# Fix Small Issues of pg_restore_extended_stats() ## Technical Context `pg_restore_extended_stats()` is part of PostgreSQL's statistics import/export infrastructure, which allows `pg_dump`/`pg_rest...

FOR PORTION OF should reject GENERATED columns

## Incremental Update: v2 Patch Posted Paul Jungwirth posted a v2 of his own patch for this issue. The key technical development: ### Patch Evolution: v1 → v2 - **v1** (referenced but not in this m...

Review comments on createPartitions() in pgbench.c

# Technical Analysis: Review Comments on createPartitions() in pgbench.c ## Core Problem This thread raises code robustness concerns in the `createPartitions()` function within `pgbench.c` — Postgr...

[PATCH] Fix null pointer dereference in PG19

# Technical Analysis: Null Pointer Dereference in FOR PORTION OF with Views and INSTEAD OF Triggers ## Core Problem A null pointer dereference crash occurs in PostgreSQL 19 when combining three fea...

[PATCH] Make spelling consistent in waiteventset.c

## Incremental Update: Committer Attribution Concern The only new message is from **Bruce Momjian**, who attempted to commit the patch but hit a procedural/policy obstacle rather than a technical one...

Checkpoint replication slots later

## Incremental Analysis: New Response from Huseyin ### Summary A new participant (Huseyin) responds with approval of the patch but raises a tangential but technically interesting observability conce...

Redundant/mis-use of _(x) gettext macro?

# Technical Analysis: Redundant/Mis-use of _(x) gettext Macro ## Core Problem This thread begins with what appears to be a simple cleanup — removing seemingly unnecessary `_()` gettext macro wrappi...

call for applications: hacker mentoring 2026

# Analysis: PostgreSQL Hacker Mentoring Program 2026 — Call for Applications ## Overview This thread documents the third year of Robert Haas's 1:1 hacker mentoring program, which pairs aspiring Post...

Set calcSumX2 = true in numeric_(poly_)deserialize

# Technical Analysis: Set calcSumX2 = true in numeric_(poly_)deserialize ## Core Problem This thread addresses a subtle but semantically important bug in PostgreSQL's aggregate deserialization func...

SQL/JSON json_table plan clause

## Incremental Update: v23 Patch Set Submitted The author (hukutoc@gmail.com) has submitted v23, addressing most of Alexander Korotkov's 8 review points from the previous round. The key development i...

SQL Property Graph Queries (SQL/PGQ)

# SQL Property Graph Queries (SQL/PGQ) - Deep Technical Analysis ## Problem Statement This thread tracks the implementation of SQL Property Graph Queries (SQL/PGQ) as specified in SQL:2023 (ISO/IEC...

Fix bug of COPY TO support partition table

# Fix Bug of COPY TO Support Partition Table ## Core Problem The "Support COPY TO for partitioned tables" feature introduced a bug in the attribute mapping logic when converting partition tuples to...

Fix bug of COPY (on_error set_null)

# Fix Bug of COPY (on_error set_null) — Array Indexing Mismatch ## Core Problem This thread reports a **memory safety bug and correctness violation** in the recently added `COPY ... (on_error set_n...

Add a guard against uninitialized default locale

# Technical Analysis: Add a Guard Against Uninitialized Default Locale ## The Core Problem This thread addresses a **defensive programming concern** in PostgreSQL's locale/collation infrastructure:...

Add missing period to HINT messages

# Add Missing Period to HINT and DETAIL Messages ## Core Problem PostgreSQL has a documented error message style guide that mandates: "Detail and hint messages: Use complete sentences, and end each...

Simplify signature of ProcessStartupPacket()

# Simplify Signature of ProcessStartupPacket() ## Technical Problem This thread addresses a code cleanup opportunity in PostgreSQL's connection startup path. The function `ProcessStartupPacket()` —...

Lazy snapshot distribution in logical decoding

# Lazy Snapshot Distribution in Logical Decoding ## Core Problem: O(N²) Snapshot Growth in the Reorder Buffer This patch addresses a fundamental scalability problem in PostgreSQL's logical decoding...

[PATCH] Add pg_get_subscription_ddl() function

# Technical Analysis: pg_get_subscription_ddl() Function Patch ## Core Problem PostgreSQL lacks a built-in function to reconstruct the DDL (Data Definition Language) statement for logical replicati...

Order of tables dumped by pg_dump

# Technical Analysis: Determinism of pg_dump Table Output Ordering ## Core Problem A user observed that two semantically identical PostgreSQL schemas—one created from scratch via DDL scripts and on...

Truncate logs by max_log_size

# Technical Analysis: Truncate Logged Statements by Maximum Length ## Core Problem PostgreSQL's logging infrastructure has no built-in mechanism to limit the size of individual logged statements. W...

Sequence Access Methods, round two

# Sequence Access Methods: A Deep Technical Analysis ## The Core Problem PostgreSQL's sequence infrastructure is monolithic: every sequence stores its state (last_value, is_called, log_cnt) in a si...

2026-05-14

[PATCH] Clean up property graph error messages

## New Activity: Ashutosh Bapat Weighs In — Argues *Against* the ReleaseSysCache Fix The only new message is from Ashutosh Bapat, who provides a surprising counter-argument to the one remaining techn...

Refactor code around GUC default_toast_compression

## Incremental Update: v3 Patch — GUC Encoding Reversal and Naming Changes ### Key Development: Paquier Abandons the Separate GUC Integer Encoding The most significant change in this round is Michae...

[PATCH] Make NumericVar storage semantics explicit

## Incremental Update: v2 Patch Posted (Bug Fix Only) The v2 posting is a minor bug-fix revision with no design changes. The substantive new information is minimal. ### What's New **UBSan-detected ...

2026-05-14 release announcement draft

## Incremental Update: Minor Editorial Feedback on Release Announcement Draft Two new messages have appeared since the initial solicitation. The thread remains **purely administrative** with no techn...

Function scan FDW pushdown

## New in this round: Pyhalov stress-tests Korotkov's v4, finds five concrete bugs/regressions — reveals that the IMMUTABLE-only tightening came at the cost of dropping safety checks that were load-b...