Re: libpq support for arrays and composites

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Merlin Moncure" <mmoncure(at)gmail(dot)com>
Cc: "Andrew Dunstan" <andrew(at)dunslane(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: libpq support for arrays and composites
Date: 2008-06-10 14:23:11
Message-ID: 16909.1213107791@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

"Merlin Moncure" <mmoncure(at)gmail(dot)com> writes:
> On 6/8/08, Andrew Dunstan <andrew(at)dunslane(dot)net> wrote:
>> Tom Lane wrote:
>>> Are you intending that these operations support both text and binary
>>> results?
>>
>> I'm a bit open on that.

> IMO, support for binary is critical. Because of the interplay of the
> array and composite out formats, the number of backslashes grows
> exponentially (!) with nesting levels. This makes text format arrays
> unsuitable for any non-trivial operations involving arrays of
> composites.

Um ... but who cares, as long as you've got functions to wrap and unwrap
the data for you? Personally I wouldn't object if these were text-only;
they'd be a whole lot more future-proof that way.

> One alternative is to do a MAXDIM (6) argument 'getter' also taking
> the requested dimension with perhaps some wrapping macros for
> simplicity. One issue with this is that it seems to suggest array
> slicing etc. which seems more complicated than it's worth.

Let's not embed MAXDIM in libpq's ABI :-(

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2008-06-10 15:25:45 Re: RFD: ALTER COLUMN .. SET STORAGE COMPRESSED;
Previous Message Merlin Moncure 2008-06-10 14:11:20 Re: libpq support for arrays and composites