Bug #876: Bugs Inserts Arrays

Started by Nonamealmost 23 years ago2 messages
#1Noname
pgsql-bugs@postgresql.org

Walter (wgpalumbo@yahoo.com.br) reports a bug with a severity of 2
The lower the number the more severe it is.

Short Description
Bugs Inserts Arrays

Long Description
Hi, Im Walter, from Brazil, and I use PG 7.2.
(excuse my english!)
The error: the last entrance (last array
dimension) determine the dimension of all arrays,
losting data information.

see the example:
all of array has 2 elements. The error: the last entrance (last array
dimension) determine the dimension of all arrays,
losting data information (the information "002" of first array is lost).

If I make a mistake, forgot it, but if not, please, report me something !

Thanks a Lot

Walter

Sample Code
create table teste(serie integer,aula text[][]);
//it�s ok when insert this
insert into teste values (1,'{{"004","009"},{"009"},{""},
{"001","002"}}');
//But when I insert this..
insert into teste values
(1,'{{"004","009","002"},{"009","001"},{""},{"001","002"}}');
^^^^^^ -> lost information ^^^^^^^^^^ -> array dimension last entrance.

No file was uploaded with this report

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noname (#1)
Re: Bug #876: Bugs Inserts Arrays

pgsql-bugs@postgresql.org writes:

Sample Code
create table teste(serie integer,aula text[][]);
//it�s ok when insert this
insert into teste values (1,'{{"004","009"},{"009"},{""},
{"001","002"}}');
//But when I insert this..
insert into teste values
(1,'{{"004","009","002"},{"009","001"},{""},{"001","002"}}');
^^^^^^ -> lost information ^^^^^^^^^^ -> array dimension last entrance.

Yeah, this seems to be a long-standing misbehavior. I get the same
results as far back as PG 7.0 (the oldest version I have running):

play=> select * from teste;
serie | aula
-------+-----------------------------------------------------
1 | {{"004","009"},{"009",""},{"",""},{"001","002"}}
1 | {{"004","009"},{"009","001"},{"",""},{"001","002"}}
(2 rows)

On the other hand, the last time I fixed what seemed an obvious bug in
the array-value parser, I got flak for it. Anyone want to defend the
present behavior?

regards, tom lane