This is a discussion on Re: patch fixing the old RETURN NEXT bug within the Pgsql Patches forums, part of the PostgreSQL category; --> On Sun, 2006-02-12 at 20:15 +0300, Sergey E. Koposov wrote: > I'm proposing the fix of this bug: > ...
| |||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| On Sun, 2006-02-12 at 20:15 +0300, Sergey E. Koposov wrote: > I'm proposing the fix of this bug: > http://archives.postgresql.org/pgsql...2/msg00498.php I think the suggested logic for compatible_tupdesc() is still wrong. For example, the patch rejects the following: create table usno (ra real, dec real, bmag real, rmag real, ipix int8); create function ret_next_check() returns setof usno as $$ declare r record; begin for r in select * from usno loop return next r; end loop; return; end; $$ language plpgsql; insert into usno values (1.0, 2.0, 3.0, 4.0, 5); select * from ret_next_check(); alter table usno drop column ipix; select * from ret_next_check(); -- fails, should succeed Also, this patch should include updates to the regression tests. -Neil ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match |
| ||||
| Needs cleaning up. Your patch has been added to the PostgreSQL unapplied patches list at: http://momjian.postgresql.org/cgi-bin/pgpatches It will be applied as soon as one of the PostgreSQL committers reviews and approves it. --------------------------------------------------------------------------- Neil Conway wrote: > On Sun, 2006-02-12 at 20:15 +0300, Sergey E. Koposov wrote: > > I'm proposing the fix of this bug: > > http://archives.postgresql.org/pgsql...2/msg00498.php > > I think the suggested logic for compatible_tupdesc() is still wrong. For > example, the patch rejects the following: > > create table usno (ra real, dec real, bmag real, rmag real, ipix int8); > create function ret_next_check() returns setof usno as $$ > declare > r record; > begin > for r in select * from usno loop > return next r; > end loop; > return; > end; > $$ language plpgsql; > > insert into usno values (1.0, 2.0, 3.0, 4.0, 5); > select * from ret_next_check(); > alter table usno drop column ipix; > select * from ret_next_check(); -- fails, should succeed > > Also, this patch should include updates to the regression tests. > > -Neil > > > > ---------------------------(end of broadcast)--------------------------- > TIP 9: In versions below 8.0, the planner will ignore your desire to > choose an index scan if your joining column's datatypes do not > match > -- Bruce Momjian http://candle.pha.pa.us SRA OSS, Inc. http://www.sraoss.com + If your life is a hard drive, Christ can be your backup. + ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match |
| Thread Tools | |
| Display Modes | |
|
|