Actually, I was not filling all of the arrays in sequential order. I
added code to initialize them in order and the function seems to be
working now. Is that a known problem?
Paul
Paul B. Anderson wrote:
> I've checked my code and it does not seem to run past any limits. I
> am filling the arrays in sequential order, extending each one in
> parallel with the others.
>
> The null problem fixed the code for some cases but I'm still having
> problems in general and with the same error message but reported in
> another place.
>
> Paul
>
>
> Tom Lane wrote:
>> "Paul B. Anderson" <paul(dot)a(at)pnlassociates(dot)com> writes:
>>
>>> I have a large stored procedure with 16 arrays, mostly varchar, each
>>> with dimension 3000. The procedure works fine on a small number of rows
>>> used from these arrays but gets the following error for large rowsets:
>>>
>>
>>
>>> ERROR: invalid array subscripts
>>>
>>
>> Right offhand I only see that error being thrown for out-of-range array
>> subscripts. Are you maybe trying to fill the arrays in nonsequential
>> order?
>>
>>
>>> If I comment out two particular arrays (that can have null values), it
>>> also runs OK.
>>>
>>
>> As already noted, we don't support nulls in arrays before 8.2, but
>> I'm not exactly sure how that omission leads to this error message.
>>
>> regards, tom lane
>>
>> .
>>
>>