On Mon, Dec 12, 2011 at 4:08 PM, Simon Riggs <si...@2ndquadrant.com> wrote: > On Mon, Dec 12, 2011 at 8:54 PM, Robert Haas <robertmh...@gmail.com> wrote: >> There are way too many places that assume that the typmod can >> just be discarded. > > If true, that probably ought to be documented cos it sounds fairly important. > > Where and when is it true?
I'm not going to go compile an exhaustive list, since that would take a week and I don't have any particular desire to invest that much time in it, but just to take a couple of simple examples: rhaas=# create or replace function wuzzle(numeric(5,2)) returns int as $$select 1$$ language sql; CREATE FUNCTION rhaas=# \df wuzzle List of functions Schema | Name | Result data type | Argument data types | Type --------+--------+------------------+---------------------+-------- public | wuzzle | numeric | | normal public | wuzzle | integer | numeric | normal (2 rows) rhaas=# select pg_typeof(1.23::numeric(5,2)); pg_typeof ----------- numeric (1 row) There are a very large number of others. Possibly grepping for places where we do getBaseType() rather than getBaseTypeAndTypmod() would be a way to find some of them. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers