Re: Insertion of geometric type column with column[0], column[1] and etc. - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Insertion of geometric type column with column[0], column[1] and etc.
Date
Msg-id AANLkTinP+RLPWiS90J18LitBizJTWbprMwS0_HRr_U87@mail.gmail.com
Whole thread Raw
In response to Re: Insertion of geometric type column with column[0], column[1] and etc.  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Tue, Oct 5, 2010 at 12:11 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Robert Haas <robertmhaas@gmail.com> writes:
>> Yeah, but isn't the current behavior awfully flaky?
>
> The reason the particular case acts so oddly is there's no such thing as
> half a point: you can't have a point with one null and one non-null
> component.  So there's no way to construct the value incrementally,
> which is what that syntax implies doing.  What actually happens is that
> "foo[0] := something" results in a NULL point if the initial value of
> foo was NULL, and then the same again for "foo[1] := something".
> I suppose we could have these cases throw an error instead, but that's
> not a lot better from the standpoint of functionality ... and I
> certainly don't wish to try to introduce partially-null point values.

Well, I think the user might expect foo[0] and foo[1] to get assigned
to simultaneously rather than iteratively.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise Postgres Company


pgsql-hackers by date:

Previous
From: Dean Rasheed
Date:
Subject: Re: wip: functions median and percentile
Next
From: Aidan Van Dyk
Date:
Subject: Re: is sync rep stalled?