BUG #15517: JSONB_BUILD_ARRAY and JSON_BUILD_ARRAY omit XMLDeclaration (if present) from XML colums
| От | PG Bug reporting form |
|---|---|
| Тема | BUG #15517: JSONB_BUILD_ARRAY and JSON_BUILD_ARRAY omit XMLDeclaration (if present) from XML colums |
| Дата | |
| Msg-id | 15517-f8fdb2e6b238eed0@postgresql.org обсуждение исходный текст |
| Ответы |
Re: BUG #15517: JSONB_BUILD_ARRAY and JSON_BUILD_ARRAY omit XML Declaration (if present) from XML colums
|
| Список | pgsql-bugs |
The following bug has been logged on the website:
Bug reference: 15517
Logged by: Mark Drake
Email address: mark.drake@golden-hind.com
PostgreSQL version: 11.1
Operating system: Windows
Description:
postgres=# create table foo(x xml);
CREATE TABLE
postgres=# insert into foo values ('<XYZ>XXX</XYZ>');
INSERT 0 1
postgres=# insert into foo values ('<?xml
version="1.0"?><ABC>123</ABC>'::XML);
INSERT 0 1
postgres=# select x, x::text, JSONB_BUILD_ARRAY(x,x::text) from foo;
x | x |
jsonb_build_array
----------------+-------------------------------------+-------------------------------------------------------------
<XYZ>XXX</XYZ> | <XYZ>XXX</XYZ> | ["<XYZ>XXX</XYZ>",
"<XYZ>XXX</XYZ>"]
<ABC>123</ABC> | <?xml version="1.0"?><ABC>123</ABC> | ["<ABC>123</ABC>",
"<?xml version=\"1.0\"?><ABC>123</ABC>"]
(2 rows)
As can be seen the JSONB_BUILD_ARRAY of x has omitted the declaration. I
would have expected the declaration to be included in the output for column
X.
As can be seen a simple workaround is to generate based on the casting to
text. Not sure how much overhead (if any) this adds.
В списке pgsql-bugs по дате отправления: