Christopher Kings-Lynne wrote:
I want to fix this bug, however I can't see how the example below is
failing...  (Obeys dropped columns)  I'm not up with my SRFs, so would
someone be able to post a concise SQL script that demonstrates the failure?

I can see in the code that it should be failing, but I need a demonstrated
example...

Here is a self contained example using cvs tip:


CREATE TABLE fk_test (f1 int, f2 int);
insert into fk_test(f1, f2) values(1, 21);
insert into fk_test(f1, f2) values(2, 22);

ALTER TABLE fk_test DROP COLUMN f2;
ALTER TABLE fk_test ADD COLUMN f3 int;

insert into fk_test(f1, f3) values(3, 33);
insert into fk_test(f1, f3) values(4, 34);

regression=# select * from fk_test ;
 f1 | f3
----+----
  1 |
  2 |
  3 | 33
  4 | 34
(4 rows)

CREATE OR REPLACE FUNCTION test()
RETURNS SETOF fk_test AS '
  DECLARE
    rec fk_test%ROWTYPE;
  BEGIN
    FOR rec IN SELECT * FROM fk_test LOOP
      RETURN NEXT rec;
    END LOOP;
    RETURN;
  END;
' LANGUAGE 'plpgsql';

regression=# select * from test();
 f1 | f3
----+----
  1 |
  2 |
  3 |
  4 |
(4 rows)


Joe




---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
   (send "unregister YourEmailAddressHere" to [EMAIL PROTECTED])

Reply via email to