Re: Server crash caused by CHECK on child

Lists: pgsql-bugspgsql-hackerspgsql-sql
From: Kovacs Baldvin <kb136(at)hszk(dot)bme(dot)hu>
To: <pgsql-hackers(at)postgresql(dot)org>, <pgsql-sql(at)postgresql(dot)org>, Kevin Way <kevin(dot)way(at)overtone(dot)org>
Subject: Server crash caused by CHECK on child
Date: 2001-09-24 08:01:43
Message-ID: Pine.GSO.4.33.0109241000560.5647-100000@ural2
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs pgsql-hackers pgsql-sql

-- Hi Kevin, and everyone!
--
-- I don't think that I only found a minor bug compared to
-- the other you wrote in your last letter: the backend crash
-- is caused by the same CHECK constraint in the child table.
--
-- However, for you without time to analyzing Kevin's huge
-- scheme, here is the very simplified, crash-causing script.
--
------------------------------------

drop table child;
drop table ancestor;

create table ancestor (
node_id int4,
a int4
);

create table child (
b int4 NOT NULL DEFAULT 0 ,
c int4 not null default 3,
CHECK ( child.b = 0 OR child.b = 1 )
) inherits (ancestor);

insert into ancestor values (3,4);
insert into child (node_id, a, b) values (5,6,1);

update ancestor set a=8 where node_id=5;

---------------------------------
--
-- I am hunting it, but I have to learn all what this query-executing
-- about, so probably it takes uncomparable longer for me than for
-- a developer.
--
-- Regards,
-- Baldvin
--


From: Kevin Way <kevin(dot)way(at)overtone(dot)org>
To: Kovacs Baldvin <kb136(at)hszk(dot)bme(dot)hu>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Server crash caused by CHECK on child
Date: 2001-09-24 11:42:33
Message-ID: 20010924114233.A76269@bean.overtone.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs pgsql-hackers pgsql-sql

> -- I don't think that I only found a minor bug compared to
> -- the other you wrote in your last letter: the backend crash
> -- is caused by the same CHECK constraint in the child table.

Oooh, my bad. I should run your scripts before assuming I know how
they fail.

> -- However, for you without time to analyzing Kevin's huge
> -- scheme, here is the very simplified, crash-causing script.

Thank you so much for finding this simplified method of crashing
Postgres. Hopefully somebody can find a fix now.

> -- I am hunting it, but I have to learn all what this query-executing
> -- about, so probably it takes uncomparable longer for me than for
> -- a developer.

That's my problem as well, though your example is vastly easier to
trace than mine.

-Kevin Way


From: Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com>
To: Kovacs Baldvin <kb136(at)hszk(dot)bme(dot)hu>
Cc: pgsql-hackers(at)postgresql(dot)org, pgsql-sql(at)postgresql(dot)org, Kevin Way <kevin(dot)way(at)overtone(dot)org>
Subject: Re: Server crash caused by CHECK on child
Date: 2001-09-24 16:09:48
Message-ID: Pine.BSF.4.21.0109240908330.5229-100000@megazone23.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs pgsql-hackers pgsql-sql


What version are you trying this script on? I'm not
seeing a crash on my 7.2 devel system (and the update occurs).

On Mon, 24 Sep 2001, Kovacs Baldvin wrote:

> -- Hi Kevin, and everyone!
> --
> -- I don't think that I only found a minor bug compared to
> -- the other you wrote in your last letter: the backend crash
> -- is caused by the same CHECK constraint in the child table.
> --
> -- However, for you without time to analyzing Kevin's huge
> -- scheme, here is the very simplified, crash-causing script.
> --
> ------------------------------------
>
> drop table child;
> drop table ancestor;
>
> create table ancestor (
> node_id int4,
> a int4
> );
>
> create table child (
> b int4 NOT NULL DEFAULT 0 ,
> c int4 not null default 3,
> CHECK ( child.b = 0 OR child.b = 1 )
> ) inherits (ancestor);
>
> insert into ancestor values (3,4);
> insert into child (node_id, a, b) values (5,6,1);
>
> update ancestor set a=8 where node_id=5;


From: Kevin Way <kevin(dot)way(at)overtone(dot)org>
To: Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: [HACKERS] Server crash caused by CHECK on child
Date: 2001-09-24 16:18:10
Message-ID: 20010924161810.B23482@bean.overtone.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs pgsql-hackers pgsql-sql

> What version are you trying this script on? I'm not
> seeing a crash on my 7.2 devel system (and the update occurs).

7.1.3. I'll sup a copy of the 7.2 sources and see if that fixes the test
case, and my actual bug.

-Kevin Way


From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: Kovacs Baldvin <kb136(at)hszk(dot)bme(dot)hu>
Cc: pgsql-hackers(at)postgresql(dot)org, pgsql-sql(at)postgresql(dot)org, Kevin Way <kevin(dot)way(at)overtone(dot)org>
Subject: Re: Server crash caused by CHECK on child
Date: 2001-10-11 20:38:37
Message-ID: 200110112038.f9BKcbD10024@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-bugs pgsql-hackers pgsql-sql


I can confirm this now works fine in current sources. No crash.

> -- Hi Kevin, and everyone!
> --
> -- I don't think that I only found a minor bug compared to
> -- the other you wrote in your last letter: the backend crash
> -- is caused by the same CHECK constraint in the child table.
> --
> -- However, for you without time to analyzing Kevin's huge
> -- scheme, here is the very simplified, crash-causing script.
> --
> ------------------------------------
>
> drop table child;
> drop table ancestor;
>
> create table ancestor (
> node_id int4,
> a int4
> );
>
> create table child (
> b int4 NOT NULL DEFAULT 0 ,
> c int4 not null default 3,
> CHECK ( child.b = 0 OR child.b = 1 )
> ) inherits (ancestor);
>
> insert into ancestor values (3,4);
> insert into child (node_id, a, b) values (5,6,1);
>
> update ancestor set a=8 where node_id=5;
>
> ---------------------------------
> --
> -- I am hunting it, but I have to learn all what this query-executing
> -- about, so probably it takes uncomparable longer for me than for
> -- a developer.
> --
> -- Regards,
> -- Baldvin
> --
>
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> message can get through to the mailing list cleanly
>

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 853-3000
+ If your life is a hard drive, | 830 Blythe Avenue
+ Christ can be your backup. | Drexel Hill, Pennsylvania 19026