Commit 33a4466f authored by Joe Conway's avatar Joe Conway

Fix ordering of obj id for Rules and EventTriggers in pg_dump.

getSchemaData() must identify extension member objects and mark them
as not to be dumped. This must happen after reading all objects that can be
direct members of extensions, but before we begin to process table subsidiary
objects. Both rules and event triggers were wrong in this regard.

Backport rules portion of patch to 9.1 -- event triggers do not exist prior to 9.3.
Suggested fix by Tom Lane, initial complaint and patch by me.
parent e0b451e4
......@@ -203,8 +203,8 @@ getSchemaData(Archive *fout, int *numTablesPtr)
inhinfo = getInherits(fout, &numInherits);
if (g_verbose)
write_msg(NULL, "reading rewrite rules\n");
getRules(fout, &numRules);
write_msg(NULL, "reading event triggers\n");
getEventTriggers(fout, &numEventTriggers);
/*
* Identify extension member objects and mark them as not to be dumped.
......@@ -241,8 +241,8 @@ getSchemaData(Archive *fout, int *numTablesPtr)
getTriggers(fout, tblinfo, numTables);
if (g_verbose)
write_msg(NULL, "reading event triggers\n");
getEventTriggers(fout, &numEventTriggers);
write_msg(NULL, "reading rewrite rules\n");
getRules(fout, &numRules);
*numTablesPtr = numTables;
return tblinfo;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment