diff options
Diffstat (limited to 'src/backend/commands/view.c')
-rw-r--r-- | src/backend/commands/view.c | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/src/backend/commands/view.c b/src/backend/commands/view.c index de1834ab1c8..909c6a8865c 100644 --- a/src/backend/commands/view.c +++ b/src/backend/commands/view.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/view.c,v 1.112 2009/01/22 17:27:54 petere Exp $ + * $PostgreSQL: pgsql/src/backend/commands/view.c,v 1.113 2009/01/27 12:40:15 petere Exp $ * *------------------------------------------------------------------------- */ @@ -27,9 +27,7 @@ #include "parser/parse_relation.h" #include "rewrite/rewriteDefine.h" #include "rewrite/rewriteManip.h" -#include "rewrite/rewriteRemove.h" #include "rewrite/rewriteSupport.h" -#include "rewrite/viewUpdate.h" #include "utils/acl.h" #include "utils/builtins.h" #include "utils/lsyscache.h" @@ -310,28 +308,13 @@ DefineViewRules(Oid viewOid, Query *viewParse, bool replace) viewOid, NULL, CMD_SELECT, - true, /* is_instead */ - true, /* is_auto */ + true, replace, list_make1(viewParse)); /* - * Delete all implicit rules on replace. CreateViewUpdateRules() - * below will re-create them if appropriate for the new view - * definition. + * Someday: automatic ON INSERT, etc */ - if (replace) - { - Relation rel = heap_open(viewOid, AccessExclusiveLock); - RemoveAutomaticRulesOnEvent(rel, CMD_INSERT); - RemoveAutomaticRulesOnEvent(rel, CMD_DELETE); - RemoveAutomaticRulesOnEvent(rel, CMD_UPDATE); - heap_close(rel, NoLock); - } - - CommandCounterIncrement(); - - CreateViewUpdateRules(viewOid, viewParse); } /*--------------------------------------------------------------- |