From 00d144ddabfe9ac04a7c5da83cbfe61b7c7786b0 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 20 Nov 2009 20:54:20 +0000 Subject: [PATCH] Fix display and dumping of UPDATE OR TRUNCATE triggers (a bizarre combination maybe, but we should get it right). Bug noted while reviewing TRIGGER WHEN patch. Already fixed in HEAD. --- src/backend/utils/adt/ruleutils.c | 4 +++- src/bin/pg_dump/pg_dump.c | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/adt/ruleutils.c b/src/backend/utils/adt/ruleutils.c index f52bf8b5a12..2fc6a668dfc 100644 --- a/src/backend/utils/adt/ruleutils.c +++ b/src/backend/utils/adt/ruleutils.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/adt/ruleutils.c,v 1.300 2009/06/11 14:49:04 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/ruleutils.c,v 1.300.2.1 2009/11/20 20:54:20 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -525,6 +525,7 @@ pg_get_triggerdef(PG_FUNCTION_ARGS) appendStringInfo(&buf, " OR UPDATE"); else appendStringInfo(&buf, " UPDATE"); + findx++; } if (TRIGGER_FOR_TRUNCATE(trigrec->tgtype)) { @@ -532,6 +533,7 @@ pg_get_triggerdef(PG_FUNCTION_ARGS) appendStringInfo(&buf, " OR TRUNCATE"); else appendStringInfo(&buf, " TRUNCATE"); + findx++; } appendStringInfo(&buf, " ON %s ", generate_relation_name(trigrec->tgrelid, NIL)); diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index be1356c46a4..9485fb7cde4 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -12,7 +12,7 @@ * by PostgreSQL * * IDENTIFICATION - * $PostgreSQL: pgsql/src/bin/pg_dump/pg_dump.c,v 1.539.2.2 2009/07/20 20:53:47 momjian Exp $ + * $PostgreSQL: pgsql/src/bin/pg_dump/pg_dump.c,v 1.539.2.3 2009/11/20 20:54:20 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -10885,6 +10885,7 @@ dumpTrigger(Archive *fout, TriggerInfo *tginfo) appendPQExpBuffer(query, " OR UPDATE"); else appendPQExpBuffer(query, " UPDATE"); + findx++; } if (TRIGGER_FOR_TRUNCATE(tginfo->tgtype)) { @@ -10892,6 +10893,7 @@ dumpTrigger(Archive *fout, TriggerInfo *tginfo) appendPQExpBuffer(query, " OR TRUNCATE"); else appendPQExpBuffer(query, " TRUNCATE"); + findx++; } appendPQExpBuffer(query, " ON %s\n", fmtId(tbinfo->dobj.name));