select * from ..;vacuum crashes

Tatsuo Ishii <t-ishii@sra.co.jp>

From: Tatsuo Ishii <t-ishii@sra.co.jp>
To: pgsql-hackers@postgreSQL.org
Cc: t-ishii@sra.co.jp
Date: 1998-10-06T02:50:56Z
Lists: pgsql-hackers
(I have changed the subject "delete from" to "select * from" )

As I reported,

	select * from getting; vacuum;

does crash the backend with included test data.

This time I have tried:

begin;
select * from getting;
vacuum;
end;

and have a crash too.

(using current source tree + FreeBSD)

I think this should be added to the Open 6.4 items list.

>Here is a report regarding the backend-crash from a user in Japan.
>Included shell script should reproduce the phenomenon.
>Note that
>	select * from getting; vacuum;
>does cause a crash, while
>	select * from getting;
>	vacuum;
>not.
>--
>Tatsuo Ishii
>t-ishii@sra.co.jp
>
>========================================================================
>#!/bin/sh
>
>DBNAME=ptest
>
>destroydb $DBNAME
>createdb $DBNAME
>psql -e $DBNAME <<EOF
>create table header
>(
>	host	text	not null,
>	port	int	not null,
>	path	text	not null,
>	file	text	not null,
>	extra	text	not null,
>	name	text	not null,
>	value	text	not null
>);
>create index header_url_idx on header (host, port, path, file, extra);
>create unique index header_uniq_idx on header (host, port, path, file, extra, name);
>
>create table reference
>(
>	f_url	text	not null,
>	t_url	text	not null
>);
>create index reference_from_idx on reference (f_url);
>create index reference_to_idx on reference (t_url);
>create unique index reference_uniq_idx on reference (f_url, t_url);
>
>create table extension
>(
>	ext	text	not null,
>	note	text
>);
>create unique index extension_ext_idx on extension (ext);
>
>create table getting
>(
>	host	text	not null,
>	port	int	not null,
>	ip	text	not null,
>	when	datetime	not null
>);
>create unique index getting_ip_idx on getting (ip);
>EOF
>#psql -c "delete from getting; vacuum;" $DBNAME
>psql -c "select * from getting; vacuum;" $DBNAME
>#psql -c "delete from getting;" $DBNAME
>#psql -c "select * from getting;" $DBNAME
>#psql -c "vacuum;" $DBNAME
>#psql -c "vacuum; vacuum;" $DBNAME
>