pl/pgsql errors when multi-dimensional arrays are used - Mailing list pgsql-docs

From PG Doc comments form
Subject pl/pgsql errors when multi-dimensional arrays are used
Date
Msg-id 161967796329.694.16959597251923954981@wrigleys.postgresql.org
Whole thread Raw
Responses Re: pl/pgsql errors when multi-dimensional arrays are used  (KraSer <kraser@gmail.com>)
Re: pl/pgsql errors when multi-dimensional arrays are used  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-docs
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/13/arrays.html
Description:

I have PostgreSQL 13. Let's declare the type below, then use it in
pl/pgsql:

create type typ1 as (
    fld1 int[][]
);

do $$
    declare
       a typ1;
    begin
        a.fld1 = '{{121,122,123,124}}';        -- OK            (1)
        a.fld1[1] = '{221,222,223,224}';        -- fails        (2)
        a.fld1[1][1] = 321;                    -- OK            (3)
        a.fld1[1][2] = 322;                    -- OK unless line (1) is removed
    end;
$$;

In line (2) the plql reports ERROR:  invalid input syntax for type integer:
"{221,222,223,224}"
When lines (1) and (2) are removed, psql reports ERROR:  array subscript out
of range

Is this expected behavior? Why?

Rafal

pgsql-docs by date:

Previous
From: Tom Lane
Date:
Subject: Re: Wrong type for the left argument of the operator "|/" and "||/" in chapter 9.3
Next
From: KraSer
Date:
Subject: Re: pl/pgsql errors when multi-dimensional arrays are used