Skip site navigation (1) Skip section navigation (2)

Re: Fixing contrib/isn for float8-pass-by-value

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Re: Fixing contrib/isn for float8-pass-by-value
Date: 2008-11-28 20:02:52
Message-ID: 29870.1227902572@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-hackers
I wrote:
> The problem reported by Rushabh Lathia boils down to the fact that
> contrib/isn intends to define a datatype that is represented "just like
> int8", but it supposes that int8 must be pass by reference.  There is
> not anything wrong with the C code; the problem is the CREATE TYPE
> command in isn.sql.  To fix this we need some way of passing the state
> of FLOAT8PASSBYVAL into that SQL script.
> ...
> This is kinda ugly but I don't really see anything better.

I had a better but more invasive idea: invent a new attribute for
CREATE TYPE

	LIKE   =  typename

which means "copy any unspecified representational details from the
given pre-existing type".  This would allow the .sql file to know
less instead of more about what's happening, so it seems more
future-proof.  It's a bit more work than the makefile hack I was
thinking about, but seems like a good investment.  (I wouldn't
propose this if I thought contrib/isn was the only user --- I expect
there are other third-party modules with similar needs.)

Comments?

			regards, tom lane

In response to

Responses

pgsql-hackers by date

Next:From: Greg Sabino MullaneDate: 2008-11-28 21:34:09
Subject: Statement-level triggers and inheritance
Previous:From: Tom LaneDate: 2008-11-28 19:29:48
Subject: Re: "could not devise a query plan for the given query"

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group