aboutsummaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-05-29 18:24:14 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-05-29 18:24:14 +0000
commitd66daabec948df2a332a9b48ec5aa49145170d80 (patch)
treebc480a027277d230f204ac614e5e92de8fd26f2b /src/backend
parentbbc048319f01819523b2d9f6b1e81f0951280517 (diff)
downloadpostgresql-d66daabec948df2a332a9b48ec5aa49145170d80.tar.gz
postgresql-d66daabec948df2a332a9b48ec5aa49145170d80.zip
Remove typeidIsValid() checks in can_coerce_type(). These checks
were pretty expensive and I believe the case they were put in to defend against can no longer arise, now that we have dependency checks to prevent deletion of a type entry that is still referenced. Certainly the example given in the CVS log entry can't happen anymore. Since this was the only use of typeidIsValid(), remove the routine too.
Diffstat (limited to 'src/backend')
-rw-r--r--src/backend/parser/parse_coerce.c8
-rw-r--r--src/backend/parser/parse_type.c11
2 files changed, 2 insertions, 17 deletions
diff --git a/src/backend/parser/parse_coerce.c b/src/backend/parser/parse_coerce.c
index 287e496570b..094e99a8acf 100644
--- a/src/backend/parser/parse_coerce.c
+++ b/src/backend/parser/parse_coerce.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/parser/parse_coerce.c,v 2.128 2005/05/05 00:19:47 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/parser/parse_coerce.c,v 2.129 2005/05/29 18:24:13 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -371,12 +371,6 @@ can_coerce_type(int nargs, Oid *input_typeids, Oid *target_typeids,
if (inputTypeId == targetTypeId)
continue;
- /* don't choke on references to no-longer-existing types */
- if (!typeidIsValid(inputTypeId))
- return false;
- if (!typeidIsValid(targetTypeId))
- return false;
-
/* accept if target is ANY */
if (targetTypeId == ANYOID)
continue;
diff --git a/src/backend/parser/parse_type.c b/src/backend/parser/parse_type.c
index 21ce20c5ecf..d8fba16b555 100644
--- a/src/backend/parser/parse_type.c
+++ b/src/backend/parser/parse_type.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/parser/parse_type.c,v 1.74 2005/04/28 21:47:14 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/parser/parse_type.c,v 1.75 2005/05/29 18:24:13 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -239,15 +239,6 @@ typenameType(const TypeName *typename)
return (Type) tup;
}
-/* check to see if a type id is valid, returns true if it is */
-bool
-typeidIsValid(Oid id)
-{
- return SearchSysCacheExists(TYPEOID,
- ObjectIdGetDatum(id),
- 0, 0, 0);
-}
-
/* return a Type structure, given a type id */
/* NB: caller must ReleaseSysCache the type tuple when done with it */
Type