Hi,
I noticed that when an action is executed on a parent table, rules for that=
action that are defined on its child tables are ignored.
Example:
create table A (ind integer);
create table B () inherits (A);
CREATE OR REPLACE RULE B_delete_rule AS
ON DELETE TO B DO INSTEAD NOTHING;
insert into B values(0);
delete from B;
-- Query returned successfully: 0 rows affected, 0 ms execution time.
-- This is what I expected
delete from A;
-- Query returned successfully: 1 row affected, 0 ms execution time.
-- This is NOT what I expected!
I am using PostgreSQL 8.4.1 on Windows XP Pro