* back to source text
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/ruleutils.c,v 1.124.2.1 2003/01/08 22:54:36 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/ruleutils.c,v 1.124.2.2 2003/10/02 22:25:08 tgl Exp $
*
* This software is copyrighted by Jan Wieck - Hamburg.
*
Form_pg_opclass opcrec;
char *opcname;
char *nspname;
+ bool isvisible;
/* Domains use their base type's default opclass */
if (OidIsValid(actual_datatype))
if (!HeapTupleIsValid(ht_opc))
elog(ERROR, "cache lookup failed for opclass %u", opclass);
opcrec = (Form_pg_opclass) GETSTRUCT(ht_opc);
- if (actual_datatype != opcrec->opcintype || !opcrec->opcdefault)
+
+ /* Must force use of opclass name if not in search path */
+ isvisible = OpclassIsVisible(opclass);
+
+ if (actual_datatype != opcrec->opcintype || !opcrec->opcdefault ||
+ !isvisible)
{
/* Okay, we need the opclass name. Do we need to qualify it? */
opcname = NameStr(opcrec->opcname);
- if (OpclassIsVisible(opclass))
+ if (isvisible)
appendStringInfo(buf, " %s", quote_identifier(opcname));
else
{