pgsql: Fix pg_dump's failure to honor dependencies of SQL functions. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Fix pg_dump's failure to honor dependencies of SQL functions.
Date
Msg-id E1q5rB5-000AZP-F1@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix pg_dump's failure to honor dependencies of SQL functions.

A new-style SQL function can contain a parse-time dependency
on a unique index, much as views and matviews can (such cases
arise from GROUP BY and ON CONFLICT clauses, for example).
To dump and restore such a function successfully, pg_dump must
postpone the function until after the unique index is created,
which will happen in the post-data part of the dump.  Therefore
we have to remove the normal constraint that functions are
dumped in pre-data.  Add code similar to the existing logic
that handles this for matviews.  I added test cases for both
as well, since code coverage tests showed that we weren't
testing the matview logic.

Per report from Sami Imseih.  Back-patch to v14 where
new-style SQL functions came in.

Discussion: https://postgr.es/m/2C1933AB-C2F8-499B-9D18-4AC1882256A0@amazon.com

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/ca9e79274938d8ede07d9990c2f6f5107553b524

Modified Files
--------------
src/bin/pg_dump/pg_dump.c        |  5 ++++-
src/bin/pg_dump/pg_dump.h        |  1 +
src/bin/pg_dump/pg_dump_sort.c   | 44 ++++++++++++++++++++++++++++++++++++++++
src/bin/pg_dump/t/002_pg_dump.pl | 40 ++++++++++++++++++++++++++++++++++++
4 files changed, 89 insertions(+), 1 deletion(-)


pgsql-committers by date:

Previous
From: Michael Paquier
Date:
Subject: pgsql: doc: Add note to prevent server spoofing with SCRAM
Next
From: Tom Lane
Date:
Subject: pgsql: Doc: explain about dependency tracking for new-style SQL functio