pgsql: pg_dump: provide a stable sort order for rules. - Mailing list pgsql-committers

From Noah Misch
Subject pgsql: pg_dump: provide a stable sort order for rules.
Date
Msg-id E1uhTYr-0001ap-2W@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
pg_dump: provide a stable sort order for rules.

Previously, we sorted rules by schema name and then rule name;
if that wasn't unique, we sorted by rule OID.  This can be
problematic for comparing dumps from databases with different
histories, especially since certain rule names like "_RETURN"
are very common.  Let's make the sort key schema name, rule name,
table name, which should be unique.  (This is the same behavior
we've long used for triggers and RLS policies.)

Andreas Karlsson

This back-patches v18 commit 350e6b8ea86c22c0b95c2e32a4e8d109255b5596 to
all supported branches.  The next commit will assert that pg_dump
provides a stable sort order for all object types.  That assertion would
fail without stabilizing DO_RULE order as this commit did.

Discussion: https://postgr.es/m/b4e468d8-0cd6-42e6-ac8a-1d6afa6e0cf1@proxel.se
Discussion: https://postgr.es/m/20250707192654.9e.nmisch@google.com
Backpatch-through: 13-17

Branch
------
REL_17_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/5dd4957b28df92d25508e4d0c950099c52347a75
Author: Tom Lane <tgl@sss.pgh.pa.us>

Modified Files
--------------
src/bin/pg_dump/pg_dump_sort.c | 11 +++++++++++
1 file changed, 11 insertions(+)


pgsql-committers by date:

Previous
From: Michael Paquier
Date:
Subject: pgsql: pg_stat_statements: Add counters for generic and custom plans
Next
From: Tomas Vondra
Date:
Subject: pgsql: Schema-qualify unnest() in ALTER DATABASE ... RESET