pg_dump: fix mis-dumping of non-global default privileges.
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 22 Oct 2021 19:22:25 +0000 (15:22 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 22 Oct 2021 19:22:25 +0000 (15:22 -0400)
commit2acc84c6fd299125702c8a8af13820abcc0d4891
treeee2060d731128a2784542623b098ba672046d30f
parentf4ce6c4d3a30ec3a12c7f64b90a6fc82887ddd7b
pg_dump: fix mis-dumping of non-global default privileges.

Non-global default privilege entries should be dumped as-is,
not made relative to the default ACL for their object type.
This would typically only matter if one had revoked some
on-by-default privileges in a global entry, and then wanted
to grant them again in a non-global entry.

Per report from Boris Korzun.  This is an old bug, so back-patch
to all supported branches.

Neil Chen, test case by Masahiko Sawada

Discussion: https://postgr.es/m/111621616618184@mail.yandex.ru
Discussion: https://postgr.es/m/CAA3qoJnr2+1dVJObNtfec=qW4Z0nz=A9+r5bZKoTSy5RDjskMw@mail.gmail.com
src/bin/pg_dump/pg_dump.c
src/bin/pg_dump/t/002_pg_dump.pl