Fix pg_upgrade to handle event triggers in extensions correctly.

pg_dump with --binary-upgrade must emit ALTER EXTENSION ADD commands
for all objects that are members of extensions.  It forgot to do so for
event triggers, as per bug #15310 from Nick Barnes.  Back-patch to 9.3
where event triggers were introduced.

Haribabu Kommi

Discussion: https://postgr.es/m/153360083872.1395.4593932457718151600@wrigleys.postgresql.org
This commit is contained in:
Tom Lane 2018-08-07 15:43:49 -04:00
parent 6b6327d938
commit 92d5dd36ec

View File

@ -16833,6 +16833,10 @@ dumpEventTrigger(Archive *fout, EventTriggerInfo *evtinfo)
appendPQExpBuffer(delqry, "DROP EVENT TRIGGER %s;\n",
qevtname);
if (dopt->binary_upgrade)
binary_upgrade_extension_member(query, &evtinfo->dobj,
"EVENT TRIGGER", qevtname, NULL);
if (evtinfo->dobj.dump & DUMP_COMPONENT_DEFINITION)
ArchiveEntry(fout, evtinfo->dobj.catId, evtinfo->dobj.dumpId,
evtinfo->dobj.name, NULL, NULL,