Re: Support for array_remove and array_replace functions

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Cc: Alex Hunsaker <badalex@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2012-07-11T18:06:55Z
Lists: pgsql-hackers
Marco Nenciarini <marco.nenciarini@2ndquadrant.it> writes:
> Patch v3 attached.

Applied with mostly-but-not-entirely cosmetic adjustments.

I left array_remove throwing error for multi-dimensional arrays for
the moment, because I realized that changing the dimensionality as
I suggested would conflict with the optimization to return the original
array if there were no matches.  I don't think we'd want the definition
to read "multidimensional arrays are changed to one dimension, but only
if at least one element is removed" --- that's getting a little too
weird.  If anyone's really hot to make it work on multi-D arrays, we
could consider disabling that optimization; it's not clear to me that
it's worth a lot.  But for now I'm willing to stick with the
throw-an-error approach.

			regards, tom lane