Avoid duplicates in ALTER ... DEPENDS ON EXTENSION
If the command is attempted for an extension that the object already
depends on, silently do nothing.
In particular, this means that if a database containing multiple such
entries is dumped, the restore will silently do the right thing and
record just the first one. (At least, in a world where pg_dump does
dump such entries -- which it doesn't currently, but it will.)
Backpatch to 9.6, where this kind of dependency was introduced.
Reviewed-by: Ibrar Ahmed, Tom Lane (offlist)
Discussion: https://postgr.es/m/20200217225333.GA30974@alvherre.pgsql
Branch
------
REL_10_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/3dfd2d6cd28a125edc4761eaefaa1193f111459d
Modified Files
--------------
src/backend/catalog/pg_depend.c | 43 ++++++++++++++++++++++
src/backend/commands/alter.c | 7 +++-
src/include/catalog/dependency.h | 1 +
.../test_extensions/expected/test_extdepend.out | 2 +
.../modules/test_extensions/sql/test_extdepend.sql | 2 +
5 files changed, 54 insertions(+), 1 deletion(-)