1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-20 15:22:23 +03:00

Revert updatable views

This commit is contained in:
Peter Eisentraut
2009-01-27 12:40:15 +00:00
parent c0f92b57dc
commit 5fe3da927b
31 changed files with 43 additions and 2291 deletions

View File

@ -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);
}
/*---------------------------------------------------------------