summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorTatsuo Ishii2002-07-25 10:07:13 +0000
committerTatsuo Ishii2002-07-25 10:07:13 +0000
commit0345f58496f9bdd462afafd8e97dac229720d663 (patch)
treef3cc17a3373e06d1ead7ea045c3caf18ad4e864b /src/include
parent8d600a7d1f9e6ea36058a727c23fc627f4841212 (diff)
Implement DROP CONVERSION
Add regression test
Diffstat (limited to 'src/include')
-rw-r--r--src/include/catalog/catversion.h4
-rw-r--r--src/include/catalog/indexing.h5
-rw-r--r--src/include/catalog/pg_conversion.h7
-rw-r--r--src/include/commands/conversioncmds.h4
-rw-r--r--src/include/utils/syscache.h46
5 files changed, 35 insertions, 31 deletions
diff --git a/src/include/catalog/catversion.h b/src/include/catalog/catversion.h
index 65facda7530..9dcd646e6f3 100644
--- a/src/include/catalog/catversion.h
+++ b/src/include/catalog/catversion.h
@@ -37,7 +37,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: catversion.h,v 1.142 2002/07/24 19:11:12 petere Exp $
+ * $Id: catversion.h,v 1.143 2002/07/25 10:07:12 ishii Exp $
*
*-------------------------------------------------------------------------
*/
@@ -53,6 +53,6 @@
*/
/* yyyymmddN */
-#define CATALOG_VERSION_NO 200207241
+#define CATALOG_VERSION_NO 200207251
#endif
diff --git a/src/include/catalog/indexing.h b/src/include/catalog/indexing.h
index db14ae6bd68..4928eda6b65 100644
--- a/src/include/catalog/indexing.h
+++ b/src/include/catalog/indexing.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: indexing.h,v 1.72 2002/07/22 20:23:19 petere Exp $
+ * $Id: indexing.h,v 1.73 2002/07/25 10:07:12 ishii Exp $
*
*-------------------------------------------------------------------------
*/
@@ -179,8 +179,7 @@ DECLARE_INDEX(pg_constraint_conname_nsp_index on pg_constraint using btree(conna
/* This following index is not used for a cache and is not unique */
DECLARE_INDEX(pg_constraint_conrelid_index on pg_constraint using btree(conrelid oid_ops));
DECLARE_UNIQUE_INDEX(pg_constraint_oid_index on pg_constraint using btree(oid oid_ops));
-/* This following index is not used for a cache and is not unique */
-DECLARE_INDEX(pg_conversion_default_index on pg_conversion using btree(connamespace oid_ops, conforencoding int4_ops, contoencoding int4_ops));
+DECLARE_UNIQUE_INDEX(pg_conversion_default_index on pg_conversion using btree(connamespace oid_ops, conforencoding int4_ops, contoencoding int4_ops, oid oid_ops));
DECLARE_UNIQUE_INDEX(pg_conversion_name_nsp_index on pg_conversion using btree(conname name_ops, connamespace oid_ops));
DECLARE_UNIQUE_INDEX(pg_conversion_oid_index on pg_conversion using btree(oid oid_ops));
DECLARE_UNIQUE_INDEX(pg_database_datname_index on pg_database using btree(datname name_ops));
diff --git a/src/include/catalog/pg_conversion.h b/src/include/catalog/pg_conversion.h
index d4c406b8ee1..2867843a9b2 100644
--- a/src/include/catalog/pg_conversion.h
+++ b/src/include/catalog/pg_conversion.h
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: pg_conversion.h,v 1.1 2002/07/11 07:39:27 ishii Exp $
+ * $Id: pg_conversion.h,v 1.2 2002/07/25 10:07:13 ishii Exp $
*
* NOTES
* the genbki.sh script reads this file and generates .bki
@@ -81,12 +81,15 @@ typedef FormData_pg_conversion *Form_pg_conversion;
* prototypes for functions in pg_conversion.c
*/
#include "nodes/pg_list.h"
+#include "nodes/parsenodes.h"
extern Oid ConversionCreate(const char *conname, Oid connamespace,
int32 conowner,
int4 conforencoding, int4 contoencoding,
Oid conproc, bool def);
-extern void ConversionDrop(const char *conname, Oid connamespace, int32 conowner);
+extern void ConversionDrop(const char *conname, Oid connamespace,
+ int32 conowner, DropBehavior behavior);
+extern void RemoveConversionById(Oid conversionOid);
extern Oid FindDefaultConversion(Oid name_space, int4 for_encoding, int4 to_encoding);
extern Oid FindConversionByName(List *conname);
diff --git a/src/include/commands/conversioncmds.h b/src/include/commands/conversioncmds.h
index fc4e5e6f51b..87c8c8f54ae 100644
--- a/src/include/commands/conversioncmds.h
+++ b/src/include/commands/conversioncmds.h
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: conversioncmds.h,v 1.1 2002/07/11 07:39:27 ishii Exp $
+ * $Id: conversioncmds.h,v 1.2 2002/07/25 10:07:13 ishii Exp $
*
*-------------------------------------------------------------------------
*/
@@ -18,6 +18,6 @@
#include "nodes/parsenodes.h"
extern void CreateConversionCommand(CreateConversionStmt *parsetree);
-extern void DropConversionCommand(List *conversion_name);
+extern void DropConversionCommand(List *conversion_name, DropBehavior behavior);
#endif /* CONVERSIONCMDS_H */
diff --git a/src/include/utils/syscache.h b/src/include/utils/syscache.h
index 5d964bb5668..e8c70fa00be 100644
--- a/src/include/utils/syscache.h
+++ b/src/include/utils/syscache.h
@@ -9,7 +9,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: syscache.h,v 1.50 2002/07/18 23:11:32 petere Exp $
+ * $Id: syscache.h,v 1.51 2002/07/25 10:07:13 ishii Exp $
*
*-------------------------------------------------------------------------
*/
@@ -39,27 +39,29 @@
#define CASTSOURCETARGET 8
#define CLAAMNAMENSP 9
#define CLAOID 10
-#define CONNAMESP 11
-#define GRONAME 12
-#define GROSYSID 13
-#define INDEXRELID 14
-#define INHRELID 15
-#define LANGNAME 16
-#define LANGOID 17
-#define NAMESPACENAME 18
-#define NAMESPACEOID 19
-#define OPERNAMENSP 20
-#define OPEROID 21
-#define PROCNAMENSP 22
-#define PROCOID 23
-#define RELNAMENSP 24
-#define RELOID 25
-#define RULERELNAME 26
-#define SHADOWNAME 27
-#define SHADOWSYSID 28
-#define STATRELATT 29
-#define TYPENAMENSP 30
-#define TYPEOID 31
+#define CONDEFAULT 11
+#define CONNAMESP 12
+#define CONOID 13
+#define GRONAME 14
+#define GROSYSID 15
+#define INDEXRELID 16
+#define INHRELID 17
+#define LANGNAME 18
+#define LANGOID 19
+#define NAMESPACENAME 20
+#define NAMESPACEOID 21
+#define OPERNAMENSP 22
+#define OPEROID 23
+#define PROCNAMENSP 24
+#define PROCOID 25
+#define RELNAMENSP 26
+#define RELOID 27
+#define RULERELNAME 28
+#define SHADOWNAME 29
+#define SHADOWSYSID 30
+#define STATRELATT 31
+#define TYPENAMENSP 32
+#define TYPEOID 33
extern void InitCatalogCache(void);
extern void InitCatalogCachePhase2(void);