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

Reply via email to