From: | PG Bug reporting form <noreply(at)postgresql(dot)org> |
---|---|
To: | pgsql-bugs(at)lists(dot)postgresql(dot)org |
Cc: | easteregg(at)verfriemelt(dot)org |
Subject: | BUG #15999: jsonb_populate_record fails with array column |
Date: | 2019-09-10 09:55:06 |
Message-ID: | 15999-26ff3cac50876c60@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
The following bug has been logged on the website:
Bug reference: 15999
Logged by: Richard
Email address: easteregg(at)verfriemelt(dot)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)
From | Date | Subject | |
---|---|---|---|
Next Message | Etsuro Fujita | 2019-09-10 11:41:34 | Re: BUG #15998: query to return a table column list gives error on a missing foreign data wrapper library |
Previous Message | PG Bug reporting form | 2019-09-10 09:46:01 | BUG #15998: query to return a table column list gives error on a missing foreign data wrapper library |