diff options
| author | Bruce Momjian <bruce@momjian.us> | 1999-09-23 17:03:39 +0000 |
|---|---|---|
| committer | Bruce Momjian <bruce@momjian.us> | 1999-09-23 17:03:39 +0000 |
| commit | e7cad7b0cbf88e2c0c5bf89957e60657561ffd70 (patch) | |
| tree | 2d88ae4f0faeadd7796481f626364e81f116e956 /src/include | |
| parent | abd4bf13416e0dab832be4944d51de2f9e25f784 (diff) | |
| download | postgresql-e7cad7b0cbf88e2c0c5bf89957e60657561ffd70.tar.gz | |
Add TRUNCATE command, with psql help and sgml additions.
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/catalog/heap.h | 3 | ||||
| -rw-r--r-- | src/include/commands/creatinh.h | 3 | ||||
| -rw-r--r-- | src/include/nodes/nodes.h | 3 | ||||
| -rw-r--r-- | src/include/nodes/parsenodes.h | 12 | ||||
| -rw-r--r-- | src/include/storage/bufmgr.h | 3 | ||||
| -rw-r--r-- | src/include/utils/portal.h | 3 |
6 files changed, 21 insertions, 6 deletions
diff --git a/src/include/catalog/heap.h b/src/include/catalog/heap.h index b8e89d8c39..c8c130da96 100644 --- a/src/include/catalog/heap.h +++ b/src/include/catalog/heap.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: heap.h,v 1.20 1999/07/15 23:03:41 momjian Exp $ + * $Id: heap.h,v 1.21 1999/09/23 17:03:10 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -23,6 +23,7 @@ extern Oid heap_create_with_catalog(char *relname, TupleDesc tupdesc, char relkind, bool istemp); extern void heap_destroy_with_catalog(char *relname); +extern void heap_truncate(char *relname); extern void heap_destroy(Relation rel); extern void InitNoNameRelList(void); diff --git a/src/include/commands/creatinh.h b/src/include/commands/creatinh.h index 60b5ae0d04..ffb111937a 100644 --- a/src/include/commands/creatinh.h +++ b/src/include/commands/creatinh.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: creatinh.h,v 1.9 1999/02/13 23:21:18 momjian Exp $ + * $Id: creatinh.h,v 1.10 1999/09/23 17:03:16 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -17,5 +17,6 @@ extern void DefineRelation(CreateStmt *stmt, char relkind); extern void RemoveRelation(char *name); +extern void TruncateRelation(char *name); #endif /* CREATINH_H */ diff --git a/src/include/nodes/nodes.h b/src/include/nodes/nodes.h index 37f47c5306..da8a06af42 100644 --- a/src/include/nodes/nodes.h +++ b/src/include/nodes/nodes.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: nodes.h,v 1.51 1999/08/16 02:17:39 tgl Exp $ + * $Id: nodes.h,v 1.52 1999/09/23 17:03:21 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -151,6 +151,7 @@ typedef enum NodeTag T_VersionStmt, T_DefineStmt, T_DestroyStmt, + T_TruncateStmt, T_ExtendStmt, T_FetchStmt, T_IndexStmt, diff --git a/src/include/nodes/parsenodes.h b/src/include/nodes/parsenodes.h index 5a1d07ec39..66c5a9132a 100644 --- a/src/include/nodes/parsenodes.h +++ b/src/include/nodes/parsenodes.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: parsenodes.h,v 1.78 1999/08/21 03:49:09 tgl Exp $ + * $Id: parsenodes.h,v 1.79 1999/09/23 17:03:22 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -283,6 +283,16 @@ typedef struct DestroyStmt } DestroyStmt; /* ---------------------- + * Truncate Table Statement + * ---------------------- + */ +typedef struct TruncateStmt +{ + NodeTag type; + char *relName; /* relation to be truncated */ +} TruncateStmt; + +/* ---------------------- * Extend Index Statement * ---------------------- */ diff --git a/src/include/storage/bufmgr.h b/src/include/storage/bufmgr.h index 195401e23f..b55230e136 100644 --- a/src/include/storage/bufmgr.h +++ b/src/include/storage/bufmgr.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: bufmgr.h,v 1.29 1999/07/17 20:18:33 momjian Exp $ + * $Id: bufmgr.h,v 1.30 1999/09/23 17:03:27 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -161,6 +161,7 @@ extern void BufferRefCountReset(int *refcountsave); extern void BufferRefCountRestore(int *refcountsave); extern int SetBufferWriteMode(int mode); extern void SetBufferCommitInfoNeedsSave(Buffer buffer); +extern int BlowawayRelationBuffers(Relation rel, BlockNumber block); extern void UnlockBuffers(void); extern void LockBuffer(Buffer buffer, int mode); diff --git a/src/include/utils/portal.h b/src/include/utils/portal.h index c299f9a6d5..62d0880460 100644 --- a/src/include/utils/portal.h +++ b/src/include/utils/portal.h @@ -6,7 +6,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: portal.h,v 1.18 1999/09/09 16:25:23 tgl Exp $ + * $Id: portal.h,v 1.19 1999/09/23 17:03:33 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -60,6 +60,7 @@ struct PortalD * Special portals (well, their names anyway) */ #define VACPNAME "<vacuum>" +#define TRUNCPNAME "<truncate>" extern bool PortalNameIsSpecial(char *pname); extern void AtEOXact_portals(void); |
