BUG #6533: postgre server crashes by create function (create table as)

Started by Nonameabout 14 years ago2 messagesbugs
Jump to latest
#1Noname
vozhdb@gmail.com

The following bug has been logged on the website:

Bug reference: 6533
Logged by: Alex Sanin
Email address: vozhdb@gmail.com
PostgreSQL version: 9.0.4
Operating system: Windows XP sp3
Description:

Here is the script:

drop table if exists test;
CREATE TABLE test
(
id serial NOT NULL,
lastname character varying(255) NOT NULL,
firstname character varying(255),
middlename character varying(255),
birthdate date,
listid integer,
CONSTRAINT test_pkey PRIMARY KEY (id)
)
WITH (
OIDS=FALSE
);

insert into test select a, a::character varying, a::character varying,
a::character varying, now()::date + a, a from generate_series(1,10000)
t(a);

CREATE OR REPLACE FUNCTION create_test_child() RETURNS void AS $$
DROP TABLE IF EXISTS test_child;
CREATE TABLE test_child AS SELECT test.* FROM test as test;
$$ LANGUAGE sql VOLATILE;

select create_test_child();

-------------------------------------
---------same without aliases--------

drop table if exists test;
CREATE TABLE test
(
id serial NOT NULL,
lastname character varying(255) NOT NULL,
firstname character varying(255),
middlename character varying(255),
birthdate date,
listid integer,
CONSTRAINT test_pkey PRIMARY KEY (id)
)
WITH (
OIDS=FALSE
);

insert into test select a, a::character varying, a::character varying,
a::character varying, now()::date + a, a from generate_series(1,10000)
t(a);

CREATE OR REPLACE FUNCTION create_test_child() RETURNS void AS $$
DROP TABLE IF EXISTS test_child;
CREATE TABLE test_child AS SELECT * FROM test;
$$ LANGUAGE sql VOLATILE;

select create_test_child();

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Noname (#1)
Re: BUG #6533: postgre server crashes by create function (create table as)

vozhdb@gmail.com writes:

The following bug has been logged on the website:
Bug reference: 6533
Logged by: Alex Sanin
Email address: vozhdb@gmail.com
PostgreSQL version: 9.0.4
Operating system: Windows XP sp3
Description:

Here is the script:

This script doesn't crash for me, in HEAD or 9.0 branch tip. Given the
use of CREATE TABLE AS in a SQL function, I suspect that this is the
same issue fixed in 9.0.7:

Fix dangling pointer after CREATE TABLE AS/SELECT INTO in a SQL-language function (Tom Lane)

In most cases this only led to an assertion failure in assert-enabled builds, but worse consequences seem possible.

regards, tom lane