> Joe Conway <mail@joeconway.com> writes:
>> Tom Lane wrote:
> 3. Set up a long-lived cache internal to the array functions that can
> translate element type OID to the needed lookup data, and won't leak
> memory across repeated calls. This is not the fastest or most general
> solution, but it seems the most localized and safest fix.
>> It seems to me that #3 is the least risky, and even if it isn't the best
>> possible performance, this is the initial implementation of indexes on
>> arrays, so it isn't like we're taking away something. Maybe solution #2
>> is better held as a performance enhancement for 7.5.
> I'm leaning that way too. It occurs to me also that the same cache
> could be used to eliminate repeated lookups in sorting setup --- which
> would not be much of a win percentagewise, compared to the sort itself,
> but still it seems worth doing.
I've committed fixes for this, and verified that inserts/updates on an
indexed array column don't leak memory anymore.
regards, tom lane