Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-05-11 Thread Merlin Moncure
On 5/11/07, Tom Lane <[EMAIL PROTECTED]> wrote: BTW, in the array patch as just committed, I was able to get rid of the I am testing this feature, no problem so far. It's fast, and works exactly as advertised! Great work! (aiui, no domain arrays for 8.3?) merlin ---

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-05-11 Thread Tom Lane
Awhile back I wrote: > I did some tests just now to determine the total number of catalog > entries associated with a simple table definition. Assuming it has > N user columns of built-in types (hence not requiring pg_depend entries > for the datatypes), I count > 1 pg_class entry for the table i

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-05-06 Thread David Fetter
On Sun, May 06, 2007 at 01:33:47PM -0400, Andrew Dunstan wrote: > However, there are still some oddities. For example, a change to or > removal of the base type affects the array type, but the array type > can be directly operated on (e.g. alter type _aa set schema foo ). > I'm inclined to say we

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-05-06 Thread Andrew Dunstan
I wrote: OK, summarising what looks to me like a consensus position, ISTM the plan could be: . fix makeArrayTypeName() or similar to make it try harder to generate a unique non-clashing name . remove the existing "62 instead of 63" name length restrictions . autogenerate array types for a

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-09 Thread Martijn van Oosterhout
On Mon, Apr 09, 2007 at 04:07:16PM -0400, Andrew Dunstan wrote: > Some type systems have named array types, some don't. I can live happily > with either. Are array types anonymous in the standard? Yes, they're anonymous in the standard. That doesn't mean we can't give them names if we wanted...

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-09 Thread Andrew Dunstan
Martijn van Oosterhout wrote: On Mon, Apr 09, 2007 at 10:14:41AM -0400, Andrew Dunstan wrote: . defer for the present any consideration of a "CREATE TYPE foo AS ARRAY ..." command. What is the rationale for allowing people to name the array type. When I originally proposed the syntax I

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-09 Thread Martijn van Oosterhout
On Mon, Apr 09, 2007 at 10:14:41AM -0400, Andrew Dunstan wrote: > . defer for the present any consideration of a "CREATE TYPE foo AS ARRAY > ..." command. What is the rationale for allowing people to name the array type. When I originally proposed the syntax I presumed that the array name would b

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-09 Thread David Fetter
On Mon, Apr 09, 2007 at 10:40:49AM -0400, Tom Lane wrote: > Andrew Dunstan <[EMAIL PROTECTED]> writes: > > Regarding catalog objects, we might have to try a little harder than > > just not generating in bootstrap mode - IIRC we generate system views > > (including pg_stats) in non-bootstrap mode.

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-09 Thread Tom Lane
Andrew Dunstan <[EMAIL PROTECTED]> writes: > Regarding catalog objects, we might have to try a little harder than > just not generating in bootstrap mode - IIRC we generate system views > (including pg_stats) in non-bootstrap mode. Maybe we just need to exempt > anything in the pg_catalog namesp

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-09 Thread Andrew Dunstan
Tom Lane wrote: Andrew Dunstan <[EMAIL PROTECTED]> writes: How would we do that? Not create the array types in bootstrap mode? Or just special-case pg_statistic? Not generate them in bootstrap mode works for me. IIRC, there's code somewhere in there that allows anyarray to pass as a c

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread Tom Lane
Andrew Dunstan <[EMAIL PROTECTED]> writes: > How would we do that? Not create the array types in bootstrap mode? Or > just special-case pg_statistic? Not generate them in bootstrap mode works for me. IIRC, there's code somewhere in there that allows anyarray to pass as a column type in bootstrap

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread Andrew Dunstan
Tom Lane wrote: Based on this, I withdraw my efficiency concern about generating rowtypes for all user tables. I do, however, still object to generating them for system tables. In particular an array type for pg_statistic will actively Not Work and probably constitute a security hole, because

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread Tom Lane
Andrew Dunstan <[EMAIL PROTECTED]> writes: > I'm slightly inclined to agree with David that the danger of catalog > bloat isn't that great, and might not justify the extra work that some > sort of explicit array creation would involve (e.g. changes in grammar, > pg_dump), as long as we are agree

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread Andrew Dunstan
Tom Lane wrote: Andrew Dunstan <[EMAIL PROTECTED]> writes: Tom Lane wrote: I don't suggest that we stop using the naming convention, but it would no longer be a hard-and-fast rule, just a convention. In particular we could rejigger things around the edges to reduce the name conflict pro

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread Tom Lane
Andrew Dunstan <[EMAIL PROTECTED]> writes: > Tom Lane wrote: >> I don't suggest that we stop using the naming convention, >> but it would no longer be a hard-and-fast rule, just a convention. >> In particular we could rejigger things around the edges to reduce >> the name conflict problem. For ins

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread Andrew Dunstan
Tom Lane wrote: I've been thinking of proposing that we add a column to pg_type that points from a type to its array type (if any), ie the reverse link from typelem. If we had that then the parser could follow that to determine which type is foo[], instead of relying on the _foo naming conventi

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread David Fetter
On Sun, Apr 08, 2007 at 07:08:38PM -0400, Tom Lane wrote: > Andrew Dunstan <[EMAIL PROTECTED]> writes: > > One of the things that's been bothering me about this proposal is that > > it leaves untouched and indeed greatly expands the scope of the typename > > mangling we do. (i.e. adding an entry

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread Tom Lane
Andrew Dunstan <[EMAIL PROTECTED]> writes: > One of the things that's been bothering me about this proposal is that > it leaves untouched and indeed greatly expands the scope of the typename > mangling we do. (i.e. adding an entry to pg_type with _ prepended). Yeah, that's been bothering me too.

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-08 Thread Andrew Dunstan
Tom Lane wrote: David Fetter <[EMAIL PROTECTED]> writes: On Mon, Apr 02, 2007 at 10:01:44PM -0400, Alvaro Herrera wrote: So, hum, what happened to the idea of creating the array types only on demand? Scotched, as far as I could tell, More like "you submitted a patch

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-03 Thread Bruce Momjian
Tom Lane wrote: > David Fetter <[EMAIL PROTECTED]> writes: > > On Mon, Apr 02, 2007 at 10:01:44PM -0400, Alvaro Herrera wrote: > >> So, hum, what happened to the idea of creating the array types only > >> on demand? > > > Scotched, as far as I could tell, > > More like "you submitted a patch that

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-03 Thread David Fetter
On Tue, Apr 03, 2007 at 02:30:07AM -0400, Tom Lane wrote: > David Fetter <[EMAIL PROTECTED]> writes: > > On Mon, Apr 02, 2007 at 10:01:44PM -0400, Alvaro Herrera wrote: > >> So, hum, what happened to the idea of creating the array types > >> only on demand? > > > Scotched, as far as I could tell,

Re: [PATCHES] [HACKERS] Arrays of Complex Types

2007-04-02 Thread Tom Lane
David Fetter <[EMAIL PROTECTED]> writes: > On Mon, Apr 02, 2007 at 10:01:44PM -0400, Alvaro Herrera wrote: >> So, hum, what happened to the idea of creating the array types only >> on demand? > Scotched, as far as I could tell, More like "you submitted a patch that entirely ignores multiple peopl