Re: Array slice subscripts (was Re: [SQL] plpgsql function with more than one array argument) - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Array slice subscripts (was Re: [SQL] plpgsql function with more than one array argument)
Date
Msg-id 13842.1014351276@sss.pgh.pa.us
Whole thread Raw
In response to Re: Array slice subscripts (was Re: [SQL] plpgsql function  (Bruce Momjian <pgman@candle.pha.pa.us>)
List pgsql-hackers
Bruce Momjian <pgman@candle.pha.pa.us> writes:
> Is this a TODO item?

I guess so, since no one seems to have objected to the proposed change.
It's a pretty trivial change; I'll take care of it.
        regards, tom lane

> Tom Lane wrote:
>> Andre Holzner <Andre.Holzner@cern.ch> writes:
> Am I doing something wrong or is this a 'feature' ? 
>> 
>> What's biting you is that the array slice operator uses the provided
>> lower bounds in the resultant array.  For example:
>> 
>> regression=# select pcha from zdec_bhab;
>> pcha
>> ------------------------------------
>> {{11,12,13},{21,22,23},{31,32,33}}
>> (1 row)
>> 
>> regression=# select array_dims(pcha) from zdec_bhab;
>> array_dims
>> ------------
>> [1:3][1:3]
>> (1 row)
>> 
>> regression=# select pcha[2:2][1:3] from zdec_bhab;
>> pcha
>> --------------
>> {{21,22,23}}
>> (1 row)
>> 
>> regression=# select array_dims(pcha[2:2][1:3]) from zdec_bhab;
>> array_dims
>> ------------
>> [2:2][1:3]
>> (1 row)
>> 
>> So your function receives an array with first index starting at 2,
>> which it's not expecting; its attempt to fetch element [1][1] is out
>> of bounds and produces a NULL.
>> 
>> Offhand this behavior seems like a misfeature: perhaps it'd be more
>> sensible for the extracted slice to always have index lower bounds
>> set to 1.  But I'd like to see some discussion before changing it
>> (and I don't plan to touch it before 7.2 release, in any case ;-)).
>> 
>> Comments anyone?
>> 
>> regards, tom lane


pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Summary of new configuration file and data directory locations
Next
From: Bruce Momjian
Date:
Subject: Re: Are stored procedures pre-compiled?