Was the "new behavior" introduced in 7.2 or 7.2.1? For
me it seems effective 7.2.1. 7.2 seems to go with the
old one. So in 7.2:.
insert into testa values ('{"bob"
,"moo",ab"x"yz,"","theend"}');
produces x as the third array element and its in 7.2.1
its abxyz.
Thanks..
Amin
On Tue, 30 Jul 2002 10:41:35 -0400
Tom Lane <tgl@sss.pgh.pa.us> wrote:
>Amin Abdulghani <amin@quantiva.com> writes:
>> Apparently there seems to be a parsing bug in 7.2.1 (
>> though it seems to be OK in 7.2)when inserting into
>>array
>> columns. The bug seems to be that if an
>> array element is quoted with "" followed by spaces
>>before
>> the comma (for the next element), the extra space
>>becomes
>> part of the text for the element.
>
>I do not believe this is a bug. The old behavior was
>quite buggy
>though. Consider for example
> insert into testa values('{"bob"
>,"moo","x"yz,"","theend"}');
>7.1 and before would produce "x" as the third array
>element value,
>losing anything to the right of the second double-quote.
> 7.2 produces
>"xyz" which seems a more natural interpretation. What's
>even stranger
>is
> insert into testa values('{"bob"
>,"moo",ab"x"yz,"","theend"}');
>7.2 produces "abxyz", where prior versions produced "x".
>
>You might say "we ignore leading whitespace in an array
>element, why
>not trailing whitespace too"? Well, we could do that,
>but I'm afraid
>of breaking applications. Historically trailing
>whitespace has not
>been ignored --- try
> insert into testa values('{"bob" ,"moo", abc
> ,"","theend"}');
>which produces "abc " in all versions.
>
>The array parser still has a lot of strange behaviors (it
>doesn't
>work quite right on non-rectangular inputs, for example)
>but I haven't
>had time to work more on it.
>
> regards, tom lane
>
>---------------------------(end of
>broadcast)---------------------------
>TIP 2: you can get off all lists at once with the
>unregister command
> (send "unregister YourEmailAddressHere" to
>majordomo@postgresql.org)