From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Fix pg_dump's failure to honor dependencies of SQL functions. |
Date: | 2023-06-04 17:06:04 |
Message-ID: | E1q5rB5-000AZR-FX@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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_14_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/d6f549d7a6275e16668faf8cddc95d6759506108
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(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2023-06-04 17:27:38 | pgsql: Doc: explain about dependency tracking for new-style SQL functio |
Previous Message | Michael Paquier | 2023-06-03 21:49:56 | pgsql: doc: Add note to prevent server spoofing with SCRAM |