Assertion failure with inherited column mappings and dropped columns - Mailing list pgsql-hackers

From Gregory Stark
Subject Assertion failure with inherited column mappings and dropped columns
Date
Msg-id 87bqehn1x2.fsf@oxford.xeocode.com
Whole thread Raw
Responses Re: Assertion failure with inherited column mappings and dropped columns
List pgsql-hackers
I got this assertion failure today:

TRAP: FailedAssertion("!(new_max_attr >= oldrel->max_attr)", File: "prepunion.c", Line: 1292)

From running something like this:

postgres=# create table foo (i integer);
CREATE TABLE
postgres=# alter table foo add j integer;
ALTER TABLE
postgres=# alter table foo drop j;
ALTER TABLE
postgres=# create table foo2 () inherits (foo);
CREATE TABLE
postgres=# explain analyze select * from foo;
server closed the connection unexpectedlyThis probably means the server terminated abnormallybefore or while processing
therequest.
 
The connection to the server was lost. Attempting reset: Succeeded.


I think there isn't actually a bug here except that the assertions are
incorrect. Everything else in the function looks ok.

diff -u -r1.142 prepunion.c
--- prepunion.c    11 Jun 2007 01:16:23 -0000    1.142
+++ prepunion.c    12 Jul 2007 14:13:11 -0000
@@ -1288,8 +1288,6 @@    ListCell   *lm;    /* Create empty result array */
-    Assert(new_min_attr <= oldrel->min_attr);
-    Assert(new_max_attr >= oldrel->max_attr);    new_attr_needed = (Relids *)        palloc0((new_max_attr -
new_min_attr+ 1) * sizeof(Relids));    /* Process user attributes, with appropriate attno mapping */
 




--  Gregory Stark EnterpriseDB          http://www.enterprisedb.com



pgsql-hackers by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: Need help with autoconf
Next
From: "Florian G. Pflug"
Date:
Subject: xlog switch & last record before the switch