From: | Robert Haas <robertmhaas(at)gmail(dot)com> |
---|---|
To: | Alexey Klyukin <alexk(at)commandprompt(dot)com> |
Cc: | Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: ALTER TABLE ONLY ...DROP CONSTRAINT is broken in HEAD. |
Date: | 2011-10-24 16:20:29 |
Message-ID: | CA+TgmoYvjvT=JZowP2bA4G5bCm37Y7rvXPWc85rkpGkG+5aDHg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Mon, Sep 12, 2011 at 11:53 AM, Alexey Klyukin
<alexk(at)commandprompt(dot)com> wrote:
> This works in 9.1, but not in HEAD:
>
> CREATE TABLE parent(id INTEGER, CONSTRAINT id_check CHECK(id>1));
> CREATE TABLE child() INHERITS(parent);
>
> ALTER TABLE ONLY parent DROP CONSTRAINT id_check;
>
> I'm getting:
> ERROR: relation 16456 has non-inherited constraint "id_check"
> where 16456 is the oid of the child table.
>
> It seems that the pg_constraint scan at ATExecDropConstraint (tablecmds.c:6751) is re-reading those tuples that were updated in the previous iterations of this scan, at least that's what I've observed in gdb. I'm not sure how to fix this yet.
Woops, seems this got overlooked. It's been fixed, though: see commit
c0f03aae0469e758964faac0fb741685170c39a5.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2011-10-24 16:23:11 | Re: [PATCH] Use new oom_score_adj without a new compile-time constant |
Previous Message | Robert Haas | 2011-10-24 15:38:18 | Re: Online base backup from the hot-standby |