JSON fields with backslashes - Mailing list pgsql-general

From Greig Wise
Subject JSON fields with backslashes
Date
Msg-id FBF57852-29F3-4688-86F9-DEFF678A6139@comcast.net
Whole thread Raw
Responses Re: JSON fields with backslashes  ("David G. Johnston" <david.g.johnston@gmail.com>)
Re: JSON fields with backslashes  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
Hello.  I have run into an issue when using the copy command on tables with json columns where Postgres seems to
improperlyescape backslashes under certain conditions thus creating invalid JSON.  Here is an example I have of the
behavior:

create table test_json(json_data json);
insert into test_json values ('{"test1": "2011-01-01", "description":"test\ntest2\ntest3 test''s\n \"Quoted Phrase\"
test\ntest."}’);
copy test_json to '/var/tmp/t.json’;

cat /var/tmp/t.json
{"test1": "2011-01-01", "description":"test\\ntest2\\ntest3 test's\\n \\"Quoted Phrase\\" test\\ntest."}

Note that the quotes within the json field have \\ in front, thus negating the escape of the quotes around “Quoted
Phrase”. Which then renders the whole thing invalid JSON.  Is this a bug? 

I am using PostgreSQL V12.16.

Thanks,
Greig Wise


pgsql-general by date:

Previous
From: Pavel Luzanov
Date:
Subject: Re: psql \du no more showing "member of" column
Next
From: "David G. Johnston"
Date:
Subject: Re: JSON fields with backslashes