Strange behavior regarding temporary sequences - Mailing list pgsql-hackers

From Harald Fuchs
Subject Strange behavior regarding temporary sequences
Date
Msg-id puk77ng7cz.fsf@srv.protecting.net
Whole thread Raw
Responses Re: Strange behavior regarding temporary sequences
List pgsql-hackers
Consider the following:

$ psql test
test=# create temp sequence ts;
CREATE SEQUENCE
test=# create table tt1 (id int not null default nextval ('ts'), str varchar(255) not null);
CREATE TABLE
test=# insert into tt1 (str) values ('str1');                                   
INSERT 45510657 1
test=# select * from tt1;id | str  
----+------ 1 | str1
(1 row)

test=# \q
$ pg_dump -s -t tt1 test
--
-- PostgreSQL database dump
--

\connect - hf

SET search_path = public, pg_catalog;

--
-- TOC entry 2 (OID 45510654)
-- Name: tt1; Type: TABLE; Schema: public; Owner: hf
--

CREATE TABLE tt1 (   id integer DEFAULT nextval('ts'::text) NOT NULL,   str character varying(255) NOT NULL
);
$ psql test
test=# insert into tt1 (str) values ('str2');
ERROR:  Relation "ts" does not exist
test=# \q
$

Although what PostgreSQL (7.3.4) does is perfectly reasonable, I find
it somewhat unclean.  Since we now disallow FOREIGN KEYs between temp
and normal tables, we might also disallow using temp sequences with
normal tables.

Opinions?



pgsql-hackers by date:

Previous
From: Andrew Dunstan
Date:
Subject: initdb
Next
From: "Adam H. Pendleton"
Date:
Subject: Re: [pgadmin-hackers] GPL code issue?