Odd rule behavior?

Поиск
Список
Период
Сортировка
От Jon Lapham
Тема Odd rule behavior?
Дата
Msg-id 3B8DAECF.5080209@extracta.com.br
обсуждение исходный текст
Ответы Re: Odd rule behavior?  (Stephan Szabo <sszabo@megazone23.bigpanda.com>)
Re: Odd rule behavior?  (Peter Eisentraut <peter_e@gmx.net>)
Список pgsql-hackers
Hello-

I'm receiving the following error message:
ERROR:  Relation "log" with OID 3694127 no longer exists

When running the following script (a stripped-down version of what I'm 
really doing, but it demostrates the behavior):

CREATE TABLE log (logid int4);
CREATE TABLE data (dataid int4);
CREATE RULE r_delete_data  AS ON DELETE TO data  DO DELETE FROM log WHERE logid=OLD.dataid;
CREATE RULE r_insert_data  AS ON INSERT TO data  DO INSERT INTO log (logid) VALUES (NEW.dataid);
INSERT INTO data (dataid) VALUES (1);
DROP TABLE log;
CREATE TABLE log (logid int4);
DELETE FROM data WHERE dataid=1;

My setup: linux v2.4.9, pg v7.1.2

Is this a bug?  If this is *not* a bug in postgres, then any suggestions 
on the right way to go about rebuilding the "log" table above?  In my 
real application, I've dropped and added some columns to "log" (changes 
such that ALTER TABLE isn't able to help).

TIA, Jon

-- 

-**-*-*---*-*---*-*---*-----*-*-----*---*-*---*-----*-----*-*-----*--- Jon Lapham Extracta Moléculas Naturais, Rio de
Janeiro,Brasil email: lapham@extracta.com.br      web: http://www.extracta.com.br/
 
***-*--*----*-------*------------*--------------------*---------------




В списке pgsql-hackers по дате отправления:

Предыдущее
От: Peter Eisentraut
Дата:
Сообщение: Re: NetBSD 1.5.1(HP300)
Следующее
От: Horst Herb
Дата:
Сообщение: Re: Re: [SQL] getting the oid for a new tuple in a BEFORE trigger