Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re: Should array_length() Return NULL)

From: Brendan Jurd <direvus(at)gmail(dot)com>
To: "David E(dot) Wheeler" <david(at)kineticode(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Josh Berkus <josh(at)agliodbs(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re: Should array_length() Return NULL)
Date: 2013-04-02 01:15:20
Message-ID: CADxJZo1OP6anMVb=t2kdoqUb4SNuOAOA_ig2CzCbPYU9o6mXuw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2 April 2013 11:34, David E. Wheeler <david(at)kineticode(dot)com> wrote:
> On Apr 1, 2013, at 4:59 PM, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>
>> I think the only people for whom nothing will break are the people who
>> aren't using arrays in the first place. Anyone who is is likely to
>> have dependencies on the way array_lower/upper work today.
>
> Well, what if we add new functions that return 0 for empty arrays, but leave the existing ones alone? Perhaps call them array_size(), array_first_index(), and array_last_index(). Then nothing has to break, and we can decide independently if we want to deprecate the older functions in a future release. Or not.

I think having an 'array_size' and an 'array_length' that behave
differently would be legitimately confusing, and I can't think of any
alternative function name that would concisely explain the difference
in behaviour -- 'array_length_without_the_stupid_nulls' is just too
long.

Cheers,
BJ

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jeff Davis 2013-04-02 01:53:09 Re: regression test failed when enabling checksum
Previous Message Brendan Jurd 2013-04-02 00:57:12 Re: [PATCH] Exorcise "zero-dimensional" arrays (Was: Re: Should array_length() Return NULL)