From: | Bill MacArthur <webmaster(at)dhs-club(dot)com> |
---|---|
To: | pgsql-bugs(at)postgresql(dot)org |
Subject: | table row type and query-specified row type do not match |
Date: | 2012-03-08 19:40:26 |
Message-ID: | 4F590B2A.1030709@dhs-club.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Hello,
Perhaps this issue has been resolved in higher sub-versions or in 9.1?
In summary, the issue revolves around the data type of a column being changed, but the data type in a dependent rule on another table does not. Does the data type have to be embedded in the rule?
Sorry if the issue has already been discussed. Googling it didn't seem to turn up anything.
Thank you for a great product anyway!
Bill MacArthur
Postgres version: PostgreSQL 9.0.5 on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-50), 64-bit
OS version: CentOS release 5.7 (Final)
network=# create table test.a (id bigint);
CREATE TABLE
network=# create table test.b (id integer);
CREATE TABLE
^
network=# create rule testb_delete AS on delete to test.b DO INSERT INTO test.a (id) VALUES (old.id);
CREATE RULE
network=# insert into test.b (id) values (123);
INSERT 0 1
network=# delete from test.b;
DELETE 1
network=# select * from test.a;
id
-----
123
(1 row)
network=# alter table test.a alter column id type integer;
ALTER TABLE
network=# insert into test.b (id) values (12399);
INSERT 0 1
network=# delete from test.b;
ERROR: table row type and query-specified row type do not match
DETAIL: Table has type integer at ordinal position 1, but query expects bigint.
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2012-03-08 19:44:21 | Re: Extension tracking temp table and causing update failure |
Previous Message | Mike Blackwell | 2012-03-08 18:45:17 | Re: [BUGS] Altering a table with a rowtype column |