Re: [PATCH] Fix replica identity mismatch for partitioned tables with publish_via_partition_root

Henson Choi <assam258@gmail.com>

From: Henson Choi <assam258@gmail.com>
To: jihyun bahn <rring0727@gmail.com>, Mikhail Kharitonov <mikhail.kharitonov.dev@gmail.com>
Cc: pgsql-hackers@lists.postgresql.org, sawada.mshk@gmail.com
Date: 2026-06-27T01:11:34Z
Lists: pgsql-hackers
Hi Mikhail,

One small design question on the v3 API:

> The old functions remain as wrappers to preserve compatibility.

After the patch, though, the base functions have no callers. The only
call site (the switch in pgoutput_change()) calls the _extended forms
directly, leaving logicalrep_write_update()/logicalrep_write_delete() as
wrappers that just forward the same relation twice; a tree-wide grep
finds no caller, and no contrib output plugin uses them either.

Is there a basis for treating these as an external interface?

They look like pgoutput's internal write-side helpers, paired with the
apply worker's logicalrep_read_* side -- not a documented extension API, and
signatures here change across major versions anyway. Unless they are
commonly called from extensions, formally or informally, I don't see
what the _extended wrapping preserves.

Since there is exactly one caller, with both the leaf and the
publication relation already in scope, it seems simpler to give the base
functions the two-relation signature directly and update that one switch
-- dropping the _extended variants and the wrappers. No behavior change.

Not a blocker; happy to drop this if there's a consumer I'm missing.

Regards,
Henson

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Fix RI fast-path for domain-typed FK columns

  2. pg_walsummary: Improve stability of test checking statistics