Re: Proposal: Conflict log history table for Logical Replication
vignesh C <vignesh21@gmail.com>
From: vignesh C <vignesh21@gmail.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Dilip Kumar <dilipbalaut@gmail.com>,
shveta malik <shveta.malik@gmail.com>, Nisha Moond <nisha.moond412@gmail.com>, Peter Smith <smithpb2250@gmail.com>, Masahiko Sawada <sawada.mshk@gmail.com>, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-06-16T03:57:19Z
Lists: pgsql-hackers
On Mon, 15 Jun 2026 at 14:20, Amit Kapila <amit.kapila16@gmail.com> wrote: > > > 2. Views are disallowed, but functions are allowed > > Creating a view in the pg_conflict schema is rejected: > > postgres=# CREATE VIEW v1 AS > > SELECT * FROM pg_conflict.pg_conflict_log_16435; > > ERROR: permission denied to create "pg_conflict.v1" > > DETAIL: Conflict schema modifications are currently disallowed. > > > > However, creating a function in the same schema succeeds: > > CREATE FUNCTION pg_conflict.get_conflict_count() > > RETURNS bigint > > LANGUAGE sql > > AS $$ > > SELECT count(*) FROM pg_conflict.pg_conflict_log_16404; > > $$; > > CREATE FUNCTION > > > > This is okay because the function is doing SELECT which we allow on > these tables. Shouldn’t creating a view also be allowed for the same reason? The function is permitted because it only performs a SELECT on the conflict log table, and such read operations are allowed. A view likewise represents a stored query definition and does not modify the conflict schema or its underlying tables. Given that direct queries on the conflict log tables are already permitted, allowing users to define views over them is consistent with the same rationale applied to functions. Regards, Vignesh
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Allow logical replication conflicts to be logged to a table.
- a5918fddf10d master landed
-
Avoid orphaned objects dependencies
- 2fbb21170e90 19 (unreleased) cited