Commit ad7d3bdd authored by Tom Lane's avatar Tom Lane

Make domain types indexable. Rod Taylor & Tom Lane.

parent 141539c3
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/indexcmds.c,v 1.83 2002/08/15 03:04:07 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/commands/indexcmds.c,v 1.84 2002/08/16 20:55:09 tgl Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -482,6 +482,9 @@ GetDefaultOpClass(Oid attrType, Oid accessMethodId) ...@@ -482,6 +482,9 @@ GetDefaultOpClass(Oid attrType, Oid accessMethodId)
Oid exactOid = InvalidOid; Oid exactOid = InvalidOid;
Oid compatibleOid = InvalidOid; Oid compatibleOid = InvalidOid;
/* If it's a domain, look at the base type instead */
attrType = getBaseType(attrType);
/* /*
* We scan through all the opclasses available for the access method, * We scan through all the opclasses available for the access method,
* looking for one that is marked default and matches the target type * looking for one that is marked default and matches the target type
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
* back to source text * back to source text
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/adt/ruleutils.c,v 1.114 2002/08/08 17:00:19 tgl Exp $ * $Header: /cvsroot/pgsql/src/backend/utils/adt/ruleutils.c,v 1.115 2002/08/16 20:55:09 tgl Exp $
* *
* This software is copyrighted by Jan Wieck - Hamburg. * This software is copyrighted by Jan Wieck - Hamburg.
* *
...@@ -2660,6 +2660,10 @@ get_opclass_name(Oid opclass, Oid actual_datatype, ...@@ -2660,6 +2660,10 @@ get_opclass_name(Oid opclass, Oid actual_datatype,
char *opcname; char *opcname;
char *nspname; char *nspname;
/* Domains use their base type's default opclass */
if (OidIsValid(actual_datatype))
actual_datatype = getBaseType(actual_datatype);
ht_opc = SearchSysCache(CLAOID, ht_opc = SearchSysCache(CLAOID,
ObjectIdGetDatum(opclass), ObjectIdGetDatum(opclass),
0, 0, 0); 0, 0, 0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment