Re: Dropped index on table preventing rule creation - Mailing list pgsql-bugs

From Tom Lane
Subject Re: Dropped index on table preventing rule creation
Date
Msg-id 28537.1315715201@sss.pgh.pa.us
Whole thread Raw
In response to Dropped index on table preventing rule creation  (Thom Brown <thom@linux.com>)
Responses Re: Dropped index on table preventing rule creation
List pgsql-bugs
Thom Brown <thom@linux.com> writes:
> I don't use rules, but in a bit of experimentation on Git master, I
> discovered the following behaviour:

> CREATE TABLE test1 (id serial primary key, things text);
> CREATE TABLE test2 (id serial primary key, things text);
> ALTER TABLE test1 DROP CONSTRAINT test1_pkey;
> ALTER TABLE test2 DROP CONSTRAINT test2_pkey;
> CREATE RULE "_RETURN" AS ON SELECT TO test1 DO INSTEAD select * from test2;

> This produces the error message: could not convert table "test1" to a
> view because it has indexes

IIRC, this is because the check is just checking relhasindex.  You
should be able to recover and create the rule if you VACUUM the table.

We could no doubt add more code to make that more transparent, but I
don't see the point.  The entire exercise of converting a table to a
view is only meant to support loading of pg_dump output from versions
that are probably ten years obsolete at this point.  We don't even
document that you can do the above, do we?

(IOW, rather than "fix" this I'd prefer to rip out the code altogether.
But maybe we should wait a couple more years for that.)

            regards, tom lane

pgsql-bugs by date:

Previous
From: "Roman"
Date:
Subject: BUG #6202: type of union column selection bug
Next
From: Craig Ringer
Date:
Subject: Re: BUG #6201: Windows User Log Off Causes Backend Exception 0xC0000142