Re: postgres 7.2.1 parse bug
От | Amin Abdulghani |
---|---|
Тема | Re: postgres 7.2.1 parse bug |
Дата | |
Msg-id | web-729800@quantiva.com обсуждение исходный текст |
Ответ на | Re: postgres 7.2.1 parse bug (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: postgres 7.2.1 parse bug
|
Список | pgsql-general |
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)
В списке pgsql-general по дате отправления: