aboutsummaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2008-05-27 21:14:00 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2008-05-27 21:14:00 +0000
commitc59eef17c96d98833c98341491ff9ca2da5a06b8 (patch)
tree63aee284cfd6898264418adbd9714c01a12641cc /src/include
parentea2827116540c5d8db51da030a4c4c9d4e4ab130 (diff)
downloadpostgresql-c59eef17c96d98833c98341491ff9ca2da5a06b8.tar.gz
postgresql-c59eef17c96d98833c98341491ff9ca2da5a06b8.zip
Back-patch the 8.3 fix that prohibits TRUNCATE, CLUSTER, and REINDEX when the
current transaction has any open references to the target relation or index (implying it has an active query using the relation). Also back-patch the 8.2 fix that prohibits TRUNCATE and CLUSTER when there are pending AFTER-trigger events. Per suggestion from Heikki.
Diffstat (limited to 'src/include')
-rw-r--r--src/include/commands/tablecmds.h5
-rw-r--r--src/include/commands/trigger.h4
2 files changed, 7 insertions, 2 deletions
diff --git a/src/include/commands/tablecmds.h b/src/include/commands/tablecmds.h
index 793f3a6c799..4fb15de071c 100644
--- a/src/include/commands/tablecmds.h
+++ b/src/include/commands/tablecmds.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: tablecmds.h,v 1.13 2003/08/04 02:40:13 momjian Exp $
+ * $Id: tablecmds.h,v 1.13.4.1 2008/05/27 21:14:00 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -15,6 +15,7 @@
#define TABLECMDS_H
#include "nodes/parsenodes.h"
+#include "utils/rel.h"
extern void AlterTableAddColumn(Oid myrelid, bool recurse, ColumnDef *colDef);
@@ -55,6 +56,8 @@ extern Oid DefineRelation(CreateStmt *stmt, char relkind);
extern void RemoveRelation(const RangeVar *relation, DropBehavior behavior);
+extern void CheckTableNotInUse(Relation rel, const char *stmt);
+
extern void TruncateRelation(const RangeVar *relation);
extern void renameatt(Oid myrelid,
diff --git a/src/include/commands/trigger.h b/src/include/commands/trigger.h
index fe8f6af61d9..9a15bbdf04a 100644
--- a/src/include/commands/trigger.h
+++ b/src/include/commands/trigger.h
@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: trigger.h,v 1.44 2003/10/06 16:38:28 tgl Exp $
+ * $Id: trigger.h,v 1.44.2.1 2008/05/27 21:14:00 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -192,6 +192,8 @@ extern void DeferredTriggerAbortXact(void);
extern void DeferredTriggerSetState(ConstraintsSetStmt *stmt);
+extern bool AfterTriggerPendingOnRel(Oid relid);
+
/*
* in utils/adt/ri_triggers.c