On Mon, Jun 6, 2011 at 6:36 AM, Peter Eisentraut <pete...@gmx.net> wrote: > On tis, 2011-05-17 at 14:11 -0500, Jaime Casanova wrote: >> On Tue, May 17, 2011 at 12:19 PM, Robert Haas <robertmh...@gmail.com> wrote: >> > >> > The more controversial question is what to do if someone tries to >> > create such a cast anyway. We could just ignore that as we do now, or >> > we could throw a NOTICE, WARNING, or ERROR. >> >> IMHO, not being an error per se but an implementation limitation i >> would prefer to send a WARNING > > Implementation limitations are normally reported as errors. I don't see > why it should be different here. >
ok, patch reports an error... do we want to backpatch this? if we want to do so maybe we can backpatch as a warning -- Jaime Casanova www.2ndQuadrant.com Professional PostgreSQL: Soporte 24x7 y capacitación
diff --git a/src/backend/commands/functioncmds.c b/src/backend/commands/functioncmds.c index 03da168..a29c13c 100644 --- a/src/backend/commands/functioncmds.c +++ b/src/backend/commands/functioncmds.c @@ -1517,6 +1517,17 @@ CreateCast(CreateCastStmt *stmt) errmsg("target data type %s is a pseudo-type", TypeNameToString(stmt->targettype)))); + /* no domains allowd */ + if (sourcetyptype == TYPTYPE_DOMAIN) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("casts over domains are not implemented yet"))); + + if (targettyptype == TYPTYPE_DOMAIN) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("casts over domains are not implemented yet"))); + /* Permission check */ if (!pg_type_ownercheck(sourcetypeid, GetUserId()) && !pg_type_ownercheck(targettypeid, GetUserId())) @@ -1672,11 +1683,13 @@ CreateCast(CreateCastStmt *stmt) * etc. would have to be modified to look through domains to their * base types. */ +#ifdef NOT_USED if (sourcetyptype == TYPTYPE_DOMAIN || targettyptype == TYPTYPE_DOMAIN) ereport(ERROR, (errcode(ERRCODE_INVALID_OBJECT_DEFINITION), errmsg("domain data types must not be marked binary-compatible"))); +#endif } /*
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers