BUG #15999: jsonb_populate_record fails with array column

Поиск
Список
Период
Сортировка
От PG Bug reporting form
Тема BUG #15999: jsonb_populate_record fails with array column
Дата
Msg-id 15999-26ff3cac50876c60@postgresql.org
обсуждение исходный текст
Ответы Re: BUG #15999: jsonb_populate_record fails with array column
Список pgsql-bugs
The following bug has been logged on the website:

Bug reference:      15999
Logged by:          Richard
Email address:      easteregg@verfriemelt.org
PostgreSQL version: 9.6.15
Operating system:   Debian / Windows
Description:

given the following simplified table with one row inserted:

> create table testa ( id serial, test text[] default
'{"test","test2"}'::text[] );
> insert into testa values (default);

when we try to populate a record of testa type we run into trouble with
postgres in version 9.6.15

> select jsonb_populate_record(null::testa , to_jsonb(testa))  FROM testa;
ERROR:  22P02: malformed array literal: "["test", "test2"]"
DETAIL:  "[" must introduce explicitly-specified array dimensions.
LOCATION:  array_in, arrayfuncs.c:269

with postgres 10 and higher we get the expected result:

> select jsonb_populate_record(null::testa , to_jsonb(testa))  FROM testa;
jsonb_populate_record
═════════════════════
(1,"{test,test2}")
(1 row)

whe the array column is null, and therefor no contained array in the jsonb
representation, everything works fine under 9.6.15

> update testa set test = null;
> select jsonb_populate_record(null::testa , to_jsonb(testa))  FROM testa;
jsonb_populate_record
═════════════════════
(1,)
(1 row)


В списке pgsql-bugs по дате отправления:

Предыдущее
От: PG Bug reporting form
Дата:
Сообщение: BUG #15998: query to return a table column list gives error on a missing foreign data wrapper library
Следующее
От: Etsuro Fujita
Дата:
Сообщение: Re: BUG #15998: query to return a table column list gives error on amissing foreign data wrapper library