In Postgres 7.4 and earlier you can do the following:
select '{{"1 2" x},{3}}'::text[];
text
-----------------
{{"1 2 x"},{3}}
(1 row)
I regard this as a bug, and am contemplating commiting a fix this
weekend against 8.0devel. However it was brought up on HACKERS that
since this has always been allowed, it might be viewed by some as a
feature, not a bug. With the proposed change, it would look like this:
select '{{"1 2" x},{3}}'::text[];
ERROR: malformed array literal: "{{"1 2" x},{3}}"
Any comments for or against calling this a bug? Now's the time to speak
up, particularly if you depend on this as a feature.
Thanks,
Joe